아래 첨부 파일 예제를 보면 알 수 있음. 개략적으로 설명하면...
자바 입출력은 utf-8 스트링 타입이고, 내부적으로 한글처리를 할 때는 byte 배열로 한글을 조작해야 함.
String 타입에서 byte 배열로 저장할 때 인코딩 방식을 eud-kr(또는 utf-8)로 지정하여
String str = "가나다라"; // 또는 readLine() 으로 읽어들임
1) 자바의 한글 스트링(항상 utf-8로 인코딩되어 있음)을 byte 배열로 변환
byte[] b1 = str.getBytes("EUC-KR"); // 스트링 str을 b1에 euc-kr로 저장
byte[] b2 = str.getBytes("UTF-8"); // 스트링 str을 b2에 utf-8로 저장
2) byte 배열 b1 또는 b2를 마음대로 조작...(형태소 분석, 조사/어미 분리, 띄어쓰기/철자오류 교정 등)
3) byte 배열 b1 또는 b2를 자바 스트링 s1, s2로 변환
String s1 = new String(b1, "EUC-KR"); // b1은 euc-kr로 저장되어 있음
String s2 = new String(b2, "UTF-8"); // b2는 utf-8로 저장되어 있음
<주의> b1, b2를 스트링으로 변환할 때 배열크기 max. size만큼 스트링으로 변환함.
4) System.out.println() 함수로 출력하여 결과 확인
첨부파일첨부된 파일이 1개 있습니다.
다음검색