java

java charset 이야기

까망거북 2010. 10. 15. 09:29
String 은 케릭터 셋으로 저장되는게 아니다.
String은 단지 String 뿐...
케릭터 셋은 String을 Byte로 변환시 사용된다.
String.getBytes("캐릭터셋")시 쓰인다는거다.

예로
String str = "Test";

byte[] bt = str.getBytes("UTF-8");

bt에 케릭터 셋이 적용되는거다.

그리하여 bt를 다시 String으로 변환시에는

String str2 = new String(bt, 케릭터셋);
으로 해야지 정상적인 변환이 된다.

new String(bt, 케릭터셋);
에서 케릭터셋은 bt의 케릭터 셋이다.