Cookie前后台使用乱码问题

来源:互联网 发布:鸿星网络 编辑:程序博客网 时间:2024/05/20 08:41

在java编程时用到Cookie时,有时会出现字符异常,如下:


  java.lang.IllegalArgumentException: Control character in cookie value or attribute.


  原因是有关中文编码的问题,中文采用的是unicode编码,而英文采用的是ASCII编码,所以当在后台对COOkie保存中文的时候需要对中文进行编码,而且前台从Cookie中取出内容的时候也要进行解码,编码和解码可以使用

    URLEncoder.encode(str, "utf-8");
    URLDecoder.decode(str,"utf-8");

    注意:编码会把空格编码成+,所以需要人为字符替换replace("+","%20"),而解码不会影响,自动吧%20识别成了空格

   前台js解码可以用:decodeURI(str)

  

 

原创粉丝点击