zoukankan      html  css  js  c++  java
  • JAVA中传递参数乱码问题

    url传递中文
    如果jsp页面,myeclipse、web.xml中org.springframework.web.filter.CharacterEncodingFilter,都是UTF-8编码,
    直接传中文一般是不会乱码的,如果再有乱码,可以用以下的方式试试。
    目前收集到4中方法,中文传参一documentPath为例:
    1.改为form方式提交,不用超链接方式提交,用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");

  • 相关阅读:
    Python 异常处理
    Python 持久存储
    Python 用户登录验证(类的继承)
    Python 类的继承/覆盖
    Python 类与对象变量
    NSNotificationCenter
    编译错误:expected specifierqualifierlist before ‘class'
    NSTimer
    如何获取应用程序委托对象
    如何从iPhone启动AppStore
  • 原文地址:https://www.cnblogs.com/-blog/p/5706362.html
Copyright © 2011-2022 走看看