개발/JSP_WEB

str.getBytes

쵸코푸들이장군 2018. 2. 12. 14:43

사용하는 플렛폼이나 사용하는 개발언어에 따라 기본적으로 셋팅되어 있는 한글 코드값이 다를 경우가 있다. 
이때 코드값을 적절하게 변형하여 사용해야 하는데 String클래스의 getBytes()메소드를 사용하면 편할 것이다.

String str="뿌잉뿌잉";
String s=new String(str.getBytes("8859_1"),"KSC5601");

위 의 코드는 "뿌잉뿌잉"란 문자를 8859_1 코드셋으로 받아들여 KSC5601로 변환하여 새로운 스트링 s를 만들게 된다. 
위의 코드를 활용하여 애플리케이션에서 DB로, DB에서 애플리케이션으로 한글을 처리할 때 사용할 수 있는 메소드를 만들어 보자.


데이터 베이스 사용코드 : 8859_1
응용 애플리케이션 사용코드 : KSC5601 일 경우


  1.    // 한글 데이터를 데이터 베이스로부터 가져올때
  2.     public String fromDB(String str) throws Exception
  3.     {
  4.         String s=new String(str.getBytes("8859_1"),"KSC5601");
  5.         return s;
  6.     }
  7.     // 한글 데이터를 데이터 베이스에 저장할때
  8.     public String toDB(String str) throws Exception
  9.     {
  10.         String s=new String(str.getBytes("KSC5601"),"8859_1");
  11.         return s;
  12.     }

출처 : Tong - lilyandkala님의 프로그래밍(JSP)통