如何解决java中接收参数乱码的问题

来自:互联网
时间:2020-05-22
阅读:

可以尝试采用如下五种方法解决:

1、改为form方式提交,不用超链接方式提交

2、通过encodeURI(encodeURI(checkText))方法提交

java代码中用URLDecoder.decode解码:

<script>
function download(documentPath){
  var url = "<c:url value='/product/download.action?documentPath='/>"+documentPath;
  url = encodeURI(encodeURI(url));
  window.location.href=url;
}
</script>

java代码中取中文:

String documentPath = (String) request.getParameter('documentPath');
documentPath = URLDecoder.decode(documentPath,"utf-8");

3、修改tomcat的server.xml中的connector,添加URLEncoding="UTF-8"

4、中文从java中传到jsp,再通过url传到java

java中编码:

URLEncoder.encode(URLEncoder.encode("传递的中文","utf-8"));

java中解码码:

URLDecoder.decode(request.getParameter('documentPath'),"utf-8");

5、Java中将字符串转码

String s = new String(filename.getBytes("ISO-8859-1"),"UTF-8");
返回顶部
顶部