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

response.getWriter().write()产生乱码

2017年11月15日 ⁄ 综合 ⁄ 共 609字 ⁄ 字号 评论关闭

        Struts1中通过action, return到页面的时候,如果代码中使用到response.getWriter().write(),那么有可能jsp页面中汉字会变成乱码。百度上有人说改为response.getWriter().print(),试着无效。在response.getWriter().write()之前加一句response.setContentType("text/html;charset=UTF-8");   就行了。jsp页面头上写的那句ContentType就是用于Response的。
值得注意的是,使用Ajax的时候,如果不是在第一次显示页面的action方法里使用response.getWriter().write(),那么就不用写response.setContentType("text/html;charset=UTF-8"); 了。因为它不是整个页面提交,action里return的时候,不是返回显示整个页面。

     我遇到类似的问题,在struts2 action中汉字转为JSON格式后,调用response.getWriter().write()写到jsp页面,汉字变成??,在response.getWriter().write()之前加一句response.setContentType("text/html;charset=UTF-8");   就行了


抱歉!评论已关闭.