상세 컨텐츠

본문 제목

Java 한글깨짐 String Encoding 샘플

프로그램 언어/Java

by husks 2014. 5. 2. 15:08

본문

반응형

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
System.out.println("UTF-8 -> EUC-KR        : " + new String(msgName.getBytes("UTF-8"), "EUC-KR"));
System.out.println("UTF-8 -> KSC5601       : " + new String(msgName.getBytes("UTF-8"), "KSC5601"));
System.out.println("UTF-8 -> X-WINDOWS-949 : " + new String(msgName.getBytes("UTF-8"), "X-WINDOWS-949"));
System.out.println("UTF-8 -> ISO-8859-1    : " + new String(msgName.getBytes("UTF-8"), "ISO-8859-1"));
System.out.println("UTF-8 -> MS949         : " + new String(msgName.getBytes("UTF-8"), "MS949"));
 
System.out.println("ISO-8859-1 -> EUC-KR        : " + new String(msgName.getBytes("ISO-8859-1"), "EUC-KR"));
System.out.println("ISO-8859-1 -> KSC5601       : " + new String(msgName.getBytes("ISO-8859-1"), "KSC5601"));
System.out.println("ISO-8859-1 -> X-WINDOWS-949 : " + new String(msgName.getBytes("ISO-8859-1"), "X-WINDOWS-949"));
System.out.println("ISO-8859-1 -> UTF-8         : " + new String(msgName.getBytes("ISO-8859-1"), "UTF-8"));
System.out.println("ISO-8859-1 -> MS949         : " + new String(msgName.getBytes("ISO-8859-1"), "MS949"));
 
System.out.println("EUC-KR -> UTF-8         : " + new String(msgName.getBytes("EUC-KR"), "UTF-8"));
System.out.println("EUC-KR -> KSC5601       : " + new String(msgName.getBytes("EUC-KR"), "KSC5601"));
System.out.println("EUC-KR -> X-WINDOWS-949 : " + new String(msgName.getBytes("EUC-KR"), "X-WINDOWS-949"));
System.out.println("EUC-KR -> ISO-8859-1    : " + new String(msgName.getBytes("EUC-KR"), "ISO-8859-1"));
System.out.println("EUC-KR -> MS949         : " + new String(msgName.getBytes("EUC-KR"), "MS949"));
 
System.out.println("KSC5601 -> EUC-KR        : " + new String(msgName.getBytes("KSC5601"), "EUC-KR"));
System.out.println("KSC5601 -> UTF-8         : " + new String(msgName.getBytes("KSC5601"), "UTF-8"));
System.out.println("KSC5601 -> X-WINDOWS-949 : " + new String(msgName.getBytes("KSC5601"), "X-WINDOWS-949"));
System.out.println("KSC5601 -> ISO-8859-1    : " + new String(msgName.getBytes("KSC5601"), "ISO-8859-1"));
System.out.println("KSC5601 -> MS949         : " + new String(msgName.getBytes("KSC5601"), "MS949"));
 
System.out.println("X-WINDOWS-949 -> EUC-KR     : " + new String(msgName.getBytes("X-WINDOWS-949"), "EUC-KR"));
System.out.println("X-WINDOWS-949 -> UTF-8      : " + new String(msgName.getBytes("X-WINDOWS-949"), "UTF-8"));
System.out.println("X-WINDOWS-949 -> KSC5601    : " + new String(msgName.getBytes("X-WINDOWS-949"), "KSC5601"));
System.out.println("X-WINDOWS-949 -> ISO-8859-1 : " + new String(msgName.getBytes("X-WINDOWS-949"), "ISO-8859-1"));
System.out.println("X-WINDOWS-949 -> MS949      : " + new String(msgName.getBytes("X-WINDOWS-949"), "MS949"));
                
System.out.println("MS949 -> EUC-KR        : " + new String(msgName.getBytes("MS949"), "EUC-KR"));
System.out.println("MS949 -> UTF-8         : " + new String(msgName.getBytes("MS949"), "UTF-8"));
System.out.println("MS949 -> KSC5601       : " + new String(msgName.getBytes("MS949"), "KSC5601"));
System.out.println("MS949 -> ISO-8859-1    : " + new String(msgName.getBytes("MS949"), "ISO-8859-1"));
System.out.println("MS949 -> X-WINDOWS-949 : " + new String(msgName.getBytes("MS949"), "X-WINDOWS-949"));



작업을 하다보면 문자가 깨져서 넘어오는 경우가 있습니다. 예를 들면 한글을 get 방식으로 전송할때 입니다.

물론 톰켓 설정을 변경하거나 해서 처리 해야 하지만 급하게 개발 중이거나 시스템을 건들 수 없는 경우에는 Encoding을 변경해서 해당 부분을 처리 할 수도 있습니다.

위의 예제를 실행하면 해당 부분에 하나 정도는 안 깨지는 문자열이 나올껍니다. (물론 하나도 안 나올수도 있고요.ㅋㅋ)

msgName는 String 변수 입니다.


반응형

관련글 더보기

댓글 영역