彼的潘 2020-06-24 21:36 采纳率: 66.7%
浏览 570
已采纳

request.getParameter(String)获取中文参数出现乱码。

html页面中,下载中文文件名的图片,用request.getParameter(String)获取图片名称时,出现乱码。
印象中,用GET方式传参时,tomcat已经解决了中文乱码问题,应该不出现乱码才对。为什么我的代码会出现乱码?跪求大神指点!
代码如下:
①HTML代码

<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="/day15/downloadServlet?filename=美女.jpg">图片</a>
</body>
</html>

②Servlet侧的下载代码

<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="/day15/downloadServlet?filename=美女.jpg">图片</a>
</body>
</html>

运行结果:
1.打印出来的filename:缇庡コ.jpg ->乱码
2.realPath获取不到,出错:
java.io.FileNotFoundException: C:\apache-tomcat-8.0.0-RC10\wtpwebapps\day15_response\img\缇庡コ.jpg (系统找不到指定的文件。)

百思不得其解,求大神指点,先谢谢了!

  • 写回答

2条回答 默认 最新

  • 木子的木木 2020-06-24 23:11
    关注

    可以尝试改成URL编码的形式

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?