2 u010880786 u010880786 于 2016.04.13 10:33 提问

我恨utf-8,能解释一下为什么会出现下面这种情况吗?

jsp编码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

_<form action="DownLoadServlet" method="get">
    <table>
        <caption>下载文件</caption>
        <tr>
            <td>下载文件名称:</td>
            <td><input type="text" name="downloadname"/>**//request取值**
            </td>
        </tr>
        <tr><td><input type="submit" value="提交"></td></tr>
    </table>
</form>_

servlet代码:
  request.setCharacterEncoding("UTF-8");//这个设了有什么用?
    response.setContentType("UTF-8");//这个设了有什么用?
    String name = request.getParameter("downloadname");//jsp都设置编码格式了为什么还是乱码!!!!
    System.out.println(name);
    name = new String(name.getBytes("ISO-8859-1"), "UTF-8");
    System.out.println(name);

    显示界面:
    ???
你

我恨utf-8,我恨utf-8,我恨utf-8
能解释一下一般转码的过程吗?我真是讨厌utf-8

2个回答

xuahidong
xuahidong   2016.04.13 10:46

你可以在服务器上设置编码,试试

u010880786
u010880786 没有,name = new String(name.getBytes("ISO-8859-1"), "UTF-8");这个已经转码成功了,我只是不明白为什么我在jsp设置了编码格式,为什么不能直接取值还要用这么繁琐的方式来转中文
一年多之前 回复
Zhangxichao100
Zhangxichao100   2016.04.16 20:37

看看浏览器的编码格式。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!