정말정말 궁굼해서 질문드립니다.(나름대로 수준 높다고 생각되는 인코딩문제)
제가 AIX + Weblogic10 환경에서 작업을 합니다.
자바파일 안에서 한글메시지를 생성해서 surem 으로 휴대폰 SMS 소켓 메시지를 보내는데
한글이 자꾸만 깨지는 겁니다.
텍스트를 ISO8859_1 로 읽어들여서 UTF-8, CP949 등 오만가지 인코딩으로 변경해 봤는데 전부 깨졌습니다.
그러다 저희회사 과장님이 텍스트를 cp949로 읽어들여서 ISO8859_1로 내보냈는데 정상적으로 전송이 되었습니다.
new String('한글 얼씨구 절씨구'.getBytes('UTF-8'), * ) ---------->실패
new String('한글 얼씨구 절씨구'.getBytes('ISO8859_1'), * ) ----------->실패
new String('한글 얼씨구 절씨구'.getBytes('cp949'), 'ISO8859_1' ) ---------->성공
* <- 오만가지 인코딩
제가 알기론 java가 utf-8 인데 왜 cp949로 읽어들여서 ISO8859_1로 내보냈는제 잘 되는지
이해가 안됩니다.
java file 도 eclipse에서 생성한 utf-8 파일이구요.
AIX의 LANG은 en_US입니다.
그리고 파일을 윈도우에서 작업해서 cvs로 올리고 AIX는 cvs에서 내려받습니다.
소켓 전송할때 BufferedInputStream ,BufferedOutputStream 으로 전송하구요...
한수 가르쳐 주세요.
댓글 달기