专注于高品质PHP技术等信息服务于一体 [STIEMAP] [RSS]

百度提供的广告:
java
当前位置:首页 > 技术文档 > java >  > 
Struts2使用response发送中文时乱码

在网上搜索了半天,无果,

先修改了struts.properties

struts.i18n.encoding=UTF-8

无果,又修改以下代码

PrintWriter out=response.getWriter();

response.setCharacterEncoding("GBK");

response.setContentType("text/html;charset=GBK;");
        

正确解决方法:

HttpServletResponse response =  ServletActionContext.getResponse();
            response.setCharacterEncoding("GBK");
            response.setContentType("text/html;charset=GBK;");
            PrintWriter out=response.getWriter();
            out.print("中国好。。。");
            //out.println(Php.showMsg("您输入验证码有误!", "-1"));
            out.close();
 return null;

一定要在PrintWriter out=response.getWriter(); 之前设置好

  response.setCharacterEncoding("GBK");
  response.setContentType("text/html;charset=GBK;");