[출처] : http://cafe.naver.com/sharkjava.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=244
쿠키에서 한글 깨지는 문제 해결
한글 문제가 해결하기 정말 어렵당.
우선 쿠키에서 한글 깨지는 문제는 이렇게 해결했습니다.
1.샘플소스
-----------------------------------------------------------
쿠키심는 부분
-----------------------------------------------------------
<%@page contentType="text/html;charset=euc-kr"%>
<%@page language="java" import="java.net.*, java.sql.*,java.lang.*,java.util.*,javax.servlet.http.*,sql.database.*"%>
<%!
String koreanDecoding(String str) throws Exception {
if (str==null)
return null;
else
return new String(str.getBytes("8859_1"),"EUC-KR");
}
%>
<%
String gubn = koreanDecoding(request.getParameter("gubn")); // 구분값1
String sqnum = koreanDecoding(request.getParameter("sqnum")); // 구분값2
if (request.getParameter("gubn") == null)
gubn = "";
if (request.getParameter("sqnum") == null)
sqnum = "";
// 구분값1
Cookie cookie_gubn = new Cookie("Mgubn", gubn);
cookie_gubn.setPath("/");
cookie_gubn.setMaxAge(60*60*2);
response.addCookie(cookie_gubn);
// 구분값2
Cookie cookie_sqnum = new Cookie("Msqnum", URLEncoder.encode(sqnum, "EUC-KR"));
cookie_sqnum.setPath("/");
cookie_sqnum.setMaxAge(60*60*2);
response.addCookie(cookie_sqnum);
%>
-----------------------------------------------------------
쿠키가져오는 부분
-----------------------------------------------------------
<%
Cookie [] cookie = request.getCookies();
String Mgubn = "" ;
String Msqnum = "" ;
for(int i = 0; i < cookie.length; i++)
{
if (cookie[i].getName().equals("Mgubn")){ // 구분값1
Mgubn = cookie[i].getValue();
}
if (cookie[i].getName().equals("Msqnum")){ // 구분값2
Msqnum = URLDecoder.decode(cookie[i].getValue());
}
}
out.println(Mgubn);
out.println("<br>");
out.println(Msqnum);
out.println("<br>");
%>
이러면 분명히 처음에 받은 gubn, sqnum 값이 한글처리됩니다.
'etc > old' 카테고리의 다른 글
syntaxhighlighter를 tistory에 설치 하는 방법 (1) | 2008.12.12 |
---|---|
[Java] byte형 변수를 부호비트를 무시하여 int형 변수에 대입하기 (0) | 2008.12.11 |
ibatis에서 insert하고 id값 받기 (DB별) (0) | 2008.11.14 |
초간단 오라클 접속 테스트 (0) | 2008.11.14 |
웹 서버 설치 (Apache 2.2 + Tomcat 6.0 + Mysql + Svn) (0) | 2008.11.05 |