글쓴이 :윤경구 1998년 1월 09일 18:35:27
In Reply to: 제 소스를 분석해 보셨군요... posted by 김필호 on 1998년 1월 09일 17:41:30:
앗, 이 쓰레드가 너무 길어지는군요.
좀더 편한 게시판을 만들어야 할 텐데...
:-)
그런데, TextArea에 자바 스트링을 넣을 때 깨어진다는 것은 이해할 수가 없습니다.
바이트 값을 바로 입력하지 않는 이상 깨어지지 않을 것입니다.
적어도 한글 운영 체제 환경에서 스트링이 유니코드로 인코딩되어 있다면 정상적으로 한글이 입력되도록
자바가 내부 처리를 할 것입니다.
실제 JDK 1.1에서 그런 문제가 발생하는 경우는 없었던 것 같습니다.
하지만 JDK 1.0이라면 문제가 달라지겠지요.
실제 바이트와 스트링을 변환할 때 하이 코드라는 개념이 있었던 것은 JDK 1.0 때 메소드들이었지요.
제임스 고슬링 아저씨가 유니코드를 이해하지 못해서 생긴 해프닝이었습니다.
어쨌든 remove_high_ksc5601() 메소드는 다음과 같이 변경할 수 있습니다.
아마도 교수님의 메소드와 같은 일을 수행할 것입니다.
private String convertBytes(String str){
try {
byte[] bytes=str.getBytes("8859_1");
result = new String(bytes, "KSC5601");
}
catch (java.io.UnsupportedEncodingException e) {
System.err.println(e.toString());
}
return result;
}
BufferedReader is=new BufferedReader(new InputStreamReader((BufferedInputStream)connection.getContent()));
while (true) {
String content=is.readLine();
if (content==null)
break;
ta.append(content+'\n');
}