如何处理Cookie存储和读取中文乱码问题

存储Cookie

for(String str:books){

  str=new String(str.getBytes("ISO-8859-1"),"utf-8");      
  str=URLEncoder.encode(str);                    解决Cookie存中文的乱码问题
  Cookie cook=new Cookie("books",str);      创建Cookie对象
  response.addCookie(cook);                     使用response对象的addCookie()的方法写入  cook
}

读取Cookie

Cookie[] cooks=request.getCookies();            用过request兑现创建一个Cookie的数组
String value="";
for(int i=0;i<cooks.length;i++){
  if(cooks[i].getName().equals("books")){
  value=new String(value.getBytes("ISO-8859-1"),"utf-8");      
  value=URLDecoder.decode(cooks[i].getValue(), "GB2312");        解决Cookie读取中文的乱码问题
  out.print(value);
}
}

原文地址:https://www.cnblogs.com/y-c-t/p/8283923.html