질문에 대한 추가사항


[ 다음 글들 ] [ 이어서 글올리기(답하기) ] [ 자바 묻고 답하기 ]

글쓴이 :전응식 1998년 2월 25일 11:17:42

In Reply to: Jdbc의 getBinaryStream에 관한 한글질문 posted by 전응식 on 1998년 2월 25일 10:43:28:

참고로 저는 server의 NLS-LANG은 KO16KSC5601로
설정하여놓았습니다.


그리고 getString하여 가져온 UNI1.2코드를
아래의 소스를 통하여 변환을 하였더니 한글은 제대로 나오는데
그외의 문자들(숫자나, 스페이스등 특수키)은 깨져서
나옵니다.
어떻게 하여야 되는지 가르켜주시기 바랍니다..


public static String fromUni12( String uni12 )
{
int len = uni12.length();
char[] out = new char[len];
byte[] ksc = new byte[2];
for( int i = 0; i < len; i++ )
{
char c = uni12.charAt(i);
if ( c < 0x3400 && 0x4dff < c )
{
out[i] = c;
}
else if ( 0x3d2e <= c ) // 유니코드 1.2 한글 보충 영역 A, B
{
System.err.println( "Warning: Some of Unicode 1.2 hangul character was ignored." );
out[i] = '\ufffd';
}
else // 유니코드 1.2의 KSC5601 대응 한글 영역
{
try
{
ksc[0] = (byte) ( (c - 0x3400) / 94 + 0xb0 );
ksc[1] = (byte) ( (c - 0x3400) % 94 + 0xa1 );
out[i] = new String( ksc, "KSC5601" ).charAt(0);
}
catch( java.io.UnsupportedEncodingException ex )
{ throw new InternalError( "Fatal Error: KSC5601 encoding is not supported." );
}
}
}
return new String( out );
}



다음 글들:



이어서 글올리기(답하기)

이름:
E-Mail:
제목:
내용:
관련 URL(선택):
URL 제목(선택):
관련 이미지 URL:


[ 다음 글들 ] [ 이어서 글올리기(답하기) ] [ 자바 묻고 답하기 ]