read

Error

개발 소스 중에 EUC-KR 인코딩 파일은 macOS 에서 한글이 깨지는 현상이 있지요.
UTF-8 인코딩 파일로 변환해서 컴파일하고 실행해야지요.


파일 인코딩

파일 인코딩을 확인해 볼까요? I 옵션을 주면 mime 타입 인코딩 정보가 나옵니다.

씁슬하게도 EUC-KR 인코딩은 라틴어 표준코드인 ISO-8859-1 로 인식하네요.

$ file Client.java
Client.java: c program text, ISO-8859 text

$ file -I Client.java
Client.java: text/x-c; charset=iso-8859-1

UTF-8 인코딩파일 보시겠습니다.

$ file Test.java
Test.java: Java source, UTF-8 Unicode text

$ file -I Test.java
Test.java: text/x-java; charset=utf-8

ICOV 사용법

아래 명령어로 변환시 파일내용이 콘솔에 그대로 출력되서 나오지요.
간단한 내용확인만 필요하고 변환된 인코딩 파일 생성은 필요없는 경우겠지요.
iconv -f 원본파일인코딩 -t 변경인코딩 원본파일명


보통은 파일 저장해서 쓰겠지요?
iconv -f 원본파일인코딩 -t 변경인코딩 원본파일명 > 새파일명

$ iconv -f EUC-KR -t UTF-8 Test.java > Test_utf8.java

인코딩 목록

iconv 에서 변환가능한 인코딩 목록입니다.

$ iconv -l
ANSI_X3.4-1968 ANSI_X3.4-1986 ASCII CP367 IBM367 ISO-IR-6 ISO646-US ISO_646.IRV:1991 US US-ASCII CSASCII
UTF-8 UTF8
...

안내말씀

혹시나 해서 드리는 말인데,
파일명 새로 변환하기 귀찮다고 새파일명을 동일이름으로 지정한다면 O KB 파일을 보게될꺼예요.
귀차니즘이 낳은 대참사를 겪을실껍니다.

$ iconv -f EUC-KR -t UTF-8 Test.java > Test.java

linux iconv

Blog Logo

Weeping Willow


Published

Image

Willow's Blog

Welcome!

Back to Overview