问答详情
源自:1-3 手工编写第一个Servlet

中文乱码....

System.out.println("处理get请求......"); PrintWriter out = response.getWriter(); response.setContentType("text/html;charset=utf-8"); request.setCharacterEncoding("utf-8"); out.println("

你好,servlet


"); 不明白为何中文乱码?

提问者:object_qian 2015-10-22 12:19

个回答

  • 逆光之羽
    2015-10-23 00:14:16

    你用的什么开发工具?eclipse?项目设置过编码没?想了想应该是项目编码没改的关系,项目默认编码一般都不是utf-8

    你要是用的是eclipse的话,试试这么操作

    第一步:在项目上右击选择”prepertise“(属性),进入属性设置界面。

    第二步:将resource中的”Text file Encoding“,选择”other“中的适当类型(本例变为”UTf-8“),之后点击”ok“按钮,完成设置(可根据实际情况多次切换编码格式来找到适应的编码类型即可).

    http://img.mukewang.com/56290ae4000103a312110678.jpg

    如果更改之后代码里的字符变成乱码了就把代码里面的中文字符重新输入一遍

    试下能行不

  • 逆光之羽
    2015-10-22 12:58:22

    response.setCharacterEncoding("utf-8");

    复制这句吧 前面的直接复制的网页上的,发了才发现格式有点问题

  • 逆光之羽
    2015-10-22 12:55:30

    输出之前最好

    response. setCharacterEncoding(“utf-8”);

    response.setContentType("text/html;charset=utf-8");

    这两句都加上

  • 逆光之羽
    2015-10-22 12:54:20

    你试一下再out.println()之前再加一句response. setCharacterEncoding(“utf-8”);

    看下还是不是乱码