关于cookie中文乱码问题,错误java.lang.IllegalArgumentException: Control character in cookie value or attribute.

cookie是不能直接保存中文的,不然会报错java.lang.IllegalArgumentException: Control character in cookie value or attribute.

若想要把中文(比如中文的用户名之类的)保存在cookie当中的话,首先要将编码

编码方式:

String logname = request.getParameter("Logname");
String logname1 = URLEncoder.encode(logname, "utf-8");

这里logname 是从jsp页面当中获取的用户名

logname1 则就是编码之后的用户名了,logname1 就可以直接存储在cookie当中了。

当然,这样存储在cookie当中的不是中文,如果想要正确将cookie的编码后的中文读取出来,还要解码

解码方式:

String logname1 = URLDecoder.decode(logname, "utf-8");

这里logname是读取cookie当中的用户名

logname1就是我们想要的中文用户名了。

猜你喜欢

转载自www.cnblogs.com/zxwm/p/9338345.html