现在的位置: 首页 > 综合 > 正文

使用request.setCharacterEncoding(“gb2312″)解决中文乱码的注意事项

2018年01月27日 ⁄ 综合 ⁄ 共 536字 ⁄ 字号 评论关闭

前几天发现使用request.getPragrmber()方法获取中文参数出现乱码,后发现没有添加request.setCharacterEncoding("gb2312")语句,奇怪的是加入该语句后获取的参数仍然是乱码。经过本人数次实验得出request.setCharacterEncoding("gb2312")必须放在页面的头部,可以放在<jsp:useBean class="className" scope="page|request|session|application" />后面,但不能放在<jsp:setProperty property="propertyName" param="paramName" />后面,否则字符转换失效。个人觉得在使用request.setCharacterEncoding("gb2312")之前,不能用request获取参数。

附带说明

request.setCharacterEncoding("gb2312")

此行代码必须写在最前面,如果在此前进行任何request.getPragrmber()方法都会使字符转换失效!

必须要在读取request的getParameter()和 getReader() 方法之前调用 否则字符转换失效

抱歉!评论已关闭.