zoukankan      html  css  js  c++  java
  • 中文编解码问题

    在做EIP审批接口是遇到中文编解码问题,现在将编解码过程记录如下:

    前端Javascript:

    encodeURIComponent(string)

    后端Java:

    string = new String(string.getBytes("ISO8859-1"), "UTF-8");

    附注(引用地址:http://blog.csdn.net/kalision/article/details/8640793):

    发现原来在对后台java程序里的string赋值的时候,本身已经使用了一次解码(servlet对http头进行了一次解码?),不过解码的结果依然不对。所以我们可以在页面上进行两次编码操作,这样后台自动的那次就可以抵消掉一次,然后在使用java.net.URLDecoder.decode(string,"UTF-8");进行一次解码就好了。

    正确的代码:

    JavaScript:

    encodeURIComponent(encodeURIComponent(seartext));

    java:

    java.net.URLDecoder.decode(searchtext,"UTF-8");

    另外还有一种方法是JavaScript进行一次编码,后台java处理代码:

    String s = new String(request.getParameter("name").getBytes("ISO8859-1"), "UTF-8");

  • 相关阅读:
    inline必须在定义、实现都标记
    循环数组优化队列
    游程编码的优化
    新密码
    I Could Have Danced All Night
    strtok源码 bitset 空间压缩
    XOR Swap
    补码
    临时邮箱
    linux中find批量删除空文件夹
  • 原文地址:https://www.cnblogs.com/lanhzbupt/p/3616307.html
Copyright © 2011-2022 走看看