iso-8859-1

Study/JSP 2012. 6. 18. 17:43

http://blog.empas.com/arthong1004/list.html?p=10

 

1. 문자인코딩 
 코드체계 
 KSC 5601과 Euc-kr은 같은 코드체계를 사용한다. 
 ASCII코드는 여덟 비트 중 일곱 비트만을 사용하고 그 이외의 코드들은  
 8(7bit) + 8(7bit) = 16(14bit)를 사용한다. 
 인터넷의 국제화가 추진되면서 US-ASCII 이외의 다른 나라 문자로 이루어진  
 텍스트문자열에 대한 전송 필요성도 생겼는데, 영어 이외의 문자는 8번째 최상위  
 비트 (MSB)를 사용하여 표현되며, 따라서 8비트의 전송이 필요한 것이다.  
 이에 따라 8비트를 7비트 영문 ASCII 코드로 표현하는 방법(인코딩)과 이를  
 다시 8비트로 바꾸는 방법 (디코딩)이 고안되었슴. 
 추상적인 글자셋을 구체적인 bit-stream으로 표기할 방법을 찾아야 하며,  
 그런 방법으로는 EUC-KR, ISO-2022-KR, ISO-8859-1 등이 있다. 
 EUC-KR : Bell Laboratories에서 확장 유닉스 코드 (Extended UNIX Code)라 하여,  
               유닉스 상에서 영문자 이외의 문자들을 지원하는 방법으로 제안되었슴. 
 ISO-8859-1은 두 가지 의미로 쓰임. (추상적인) 문자세트를 뜻하기도 하고,  
               문자인코딩을 뜻하기도 한다.  미국 및 서유럽 일부에서는 ISO-8859-1  
               인코딩이 폭넓게 사용되고 있으며, 우리나라에서는 EUC-KR 인코딩이  
               현재 폭넓게 사용되고 있다.  
 ISO-2022-KR : 한글 메일 전송을 위해 별도로 고안된 7비트 인코딩 방식  


2. 문자세트 
 일정 목적으로 사용되기 위한 문자들의 모임 
 KSC-5601 : 한글에 대한 국가표준코드 : 1987년 한국공업진흥청에서 제정 94*94  
                  행렬에 한글, 한자 그리고 특수문자를 배치한 추상적인 글자순서 
                  KSC-5636은 US-ASCII의 역슬래쉬가 \로 표현한 것이다. 
 ISO-8859-1 : 서유럽 언어의 표기에 필요한 US-ASCII에 없는 94개의 글자의 순차적 
                   나열임  
 EUC-KR  : KSC-5601과 KSC-5636(US-ASCII의 한글버전)의 8비트 문자집합 AT&T 
                 의 Extended Unix Charset으로 한글 표현에 이용 
 ISO-2022-KR : Korean Mail Exchange Standard, 한글메일을 전송하기 위한  
                      인코딩 방식 
  

3, 서블릿에서의 한글 처리 
  URL 정보의 한글처리 
      웹 브라우저에서 x-www-form-urlencoded 인코딩을 사용하여 한글을  
      전송하게      되면 서블릿에는 잘못된 한글이 전달된다. 
  서블릿 프로그램에서는 한글 처리를 해주어야지 한글을 볼 수 있슴.  
   한글이 깨지는 이유는 브라우져와 서블릿 프로그램이 서로다른 한글 캐릭터  
   세트를 사용하기 때문에 발생, Browser는 브라우져는 8859_1의 캐릭터 세트를  
   사용하는데 반해 서블릿에서는  KSC5601을 사용하기 때문이다. 

  컴파일시 encoding옵션을 8859_1 
      (javac –encoding 8859_1 HelloWorld.java) 
  PrintWriter 클래스 이용 
     OutputStreamWriter 클래스는 생성자에서 문자열의 encoding타입을 정의  
     PrintWriter out = new PrintWriter(new OutputStreamWriter  
                                   (res.getOutputStream(),”KSC5601”),true); 
 문자인코딩을 지정하여 웹브라우져에 한글 출력  
    setContentType()메소드를 사용 
     res.setContentType(“text/html ; charset=euc-kr”) 
     getParameter 등으로 값을 받을때는 한글변환을 해야한다. 

'Study > JSP' 카테고리의 다른 글

엔진  (0) 2012.06.19
FORM 처리하기  (0) 2012.06.19
데이터 처리  (0) 2012.06.18
JSP 소개  (0) 2012.06.18
Split 메소드  (0) 2012.05.31
Posted by 코딩하는 야구쟁이
,