====== Wide character in print at 에러 대처방법 ====== - Wide character in print at 오류는 UTF-8 플래그가 지정된 문자열을 print하려고 할때 발생합니다. - UTF-8 플래그를 제거하고 print하면 에러가 발생하지 않습니다. - UTF-8 플래그가 있는지 여부는 utf8::is_utf8를 사용하면 됩니다. ===== utf8 플래그 여부 확인 ===== - UTF8 플래그가 붙어 있는지 확인 print utf8::is_utf8 ($ string)? 'flagged': 'no flag'; - utf8::is_utf8에서는 실제 문자열이 UTF-8 여부가 아니라 어디 까지나 플래그가 켜져 있는지 여부를 확인합니다. - 따라서 UTF-8 문자열도 플래그가 있지​​ 않으면 위의 출력은 no flag입니다. - utf8::is_utf8는 use하지 않아도 사용할 수 있습니다. - use utf8을 사용하면 전혀 다른 의미가되므로 주의하여야 합니다. ===== UTF-8 플래그 제거 ===== - UTF-8 플래그가 있으면, encode를 사용하여 플래그를 제거합니다. - 다음 예에서는 $string을 utf-8로 변환하여 출력합니다. print encode ('utf-8',$string); - 윈도우에서 한글을 핸들링 할때에는 cp949로 변환하여 출력해야 정상적으로 나올때도 있습니다. print encode ('cp949',$string);