=============================== 인코딩 확인 ===============================
3가지가 있다..
1) String enc = new java.io.OutputStreamWriter(System.out).getEncoding();
System.out.println("default encoding = " + enc);
2) FileReader fr = new FileReader("C:/test");
System.out.println("FileReader.getEncoding()====>"+fr.getEncoding());
3) System.out.println("file.encoding =" + System.getProperty("file.encoding"));
컴파일 시
-Dfile.encoding=EUC-KR -Dclient.encoding.override=EUC-KR 를
사용하여 동일하게 맞추는것이 좋다.
===========================컴파일 시 인코딩 설정 속성==========================
java -Dfile.encoding=EUC-KR -Dclient.encoding.override=EUC-KR 자바파일명
================================== getBytes() =================================
예) String str="테스트";
1. System.out.println(new String(str.getBytes()));
2. System.out.println(new String(str.getBytes("UTF-8")));
3. System.out.println(new String(str.getBytes("UTF-8"), "EUC-KR"));
1. getBytes의 인자를 설정하지 않는경우 보통
기본적으로 System(os)의 인코딩 방식으로 byte []을 생성한다.
(어떤 식으로 컴파일 하였는지, 파일형식을 무엇으로 하였는지,
WAS를 통하여 컴파일 하였는지...에 따라 달라질수 있는것 같다...)
2. getBytes()에 넣어준 인자의 인코딩 방식으로 byte []을 생성한다.
3. getBytes()에 넣어준 인자의 인코딩 방식으로 byte []을 생성한후 원하는 인코딩으로
다시 변환하여 다시 스트링 문자열로 만든다.
============================파일을 열때 강제로 파일형식 변환========================
InputStreamReader inReader = new InputStreamReader(new FileInputStream(file),"EUC-KR");
BufferedReader buff = new BufferedReader(inReader);
[출처] 자바 인코딩 관련|작성자 joypheonix
'프로그래밍 > java' 카테고리의 다른 글
자바 SimpleDateFormat 정리 - 시간 및 날짜(Date) (0) | 2010.05.31 |
---|---|
자바 파일 인코딩 알아내기 (0) | 2010.04.15 |
자바 텍스트 파일 이어쓰기 (0) | 2010.04.15 |
자바 csv 파일 생성2 (0) | 2010.04.15 |
자바 CSV 파일 생셩 (0) | 2010.04.15 |