[JAVA] Error - cmd javac complile for encoding UTF-8/MS949
[Error Mesage]
C:\Users\win10\eclipse-workspace\Programming>javac OkJavaGoInHomeinput.java OkJavaGoInHomeinput.java:10: error: unmappable character (0xC6) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xF3B9) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xCC) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xC5) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xCD) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xB8) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xB3) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xBA) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xAF) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xBC) for encoding UTF-8 // parameter(??????), ??????? ^ OkJavaGoInHomeinput.java:10: error: unmappable character (0xF6) for encoding UTF-8 // parameter(??????), ??????? ^ 11 errors |
원래 하던 대로
javac OkJavaGoInHomeinput.java 를 했더니 위와 같은 에러가 떴다.
해당 java파일 코드에 주석이나 한글 등을 사용하여 오류가 난 것으로 추측된다.
(UTF-8용 인코딩이니 ' // parameter(??????), ???????'를 나타낼 수 있는 다른 인코딩을 하라는 것 같다.)
[해당 파일 유니코드 인코딩/디코딩 방식 확인방법]
eclipse - window - Preferences - General - Workspace
나는 Default값이 MS949로 되어있고, 여태 내가 만든 모든 파일은 MS949*로 만들어졌을거다.
*MS949 : 마이크로소프트 윈도 운영체제(Microsoft window OS)에서 한글을 사용하기 위해
EUC-KR을 확장해서 만든 문자 코드로 MS에서 만들었다고 하여 MS949라고 한다.
=CP949 (Code Page 949)
[해결방법]
기존 컴파일 방법
javac OkJavaGoInHomeinput.java
인코딩 옵션 추가하여 컴파일
javac -encoding MS949 OkJavaGoInHomeinput.java
나는 MS949로 인코딩하여 컴파일해야 했기 때문에 MS949를 넣었는데,
반대로 UTF-8로 컴파일해야 하면 -encoding UTF-8이라고 적어주면 된다.
성공!!
* 유니코드 : 전 세계 모든 문자를 컴퓨터에서 일관되게 표현할 수 있도록 고안된 표준코드 (유니코드 표)
* UTF-8 : 유니코드 문자를 컴퓨터 데이터로 저장하거나 불러올 때 사용하는 인코딩/디코딩 방식 문자 데이터를 8비트 기반으로 저장함.