`
smiky
  • 浏览: 257737 次
  • 性别: Icon_minigender_1
  • 来自: 天门
社区版块
存档分类
最新评论

参数编码与解码

阅读更多

转:

URL编码方法有3种
escape()   ,unescape()             encodeURI(),decodeURI()               encodeURIComponent(),decodeURIComponent()   这几种编码所起的作用各不相同

escape()   方法:    

采用ISO   Latin字符集对指定的字符串进行编码。所有的空格符、标点符号、特殊字符以及其他非ASCII字符都将被转化成%xx格式的字符编码(xx等于该字符在字符集表里面的编码的16进制数字)。比如,空格符对应的编码是%20。  

不会被此方法编码的字符:   @   *   /   +  

encodeURI()   方法:  

把URI字符串采用UTF-8编码格式转化成escape格式的字符串。  

不会被此方法编码的字符:!   @   #   $&   *   (   )   =   :   /   ;   ?   +   '  

encodeURIComponent()   方法:  

把 URI字符串采用UTF-8编码格式转化成escape格式的字符串。与encodeURI()相比,这个方法将对更多的字符进行编码,比如   /   等字符。所以如果字符串里面包含了URI的几个部分的话,不能用这个方法来进行编码,否则   /   字符被编码之后URL将显示错误。  

不会被此方法编码的字符:!   *   (   )   '  

因此,对于中文字符串来说,如果不希望把字符串编码 格式转化成UTF-8格式的(比如原页面和目标页面的charset是一致的时候),只需要使用escape。如果你的页面是GB2312或者其他的编 码,而接受参数的页面是UTF-8编码的,就要采用encodeURI或者encodeURIComponent。  

在后台JAVA处理函数:

JS是:escape()函数        
Java是:      
java.net.URLEncoder.encode()      
java.net.URLDecoder.decode()      
但是这个函数已经不推荐使用了
现在推荐使用
java.net.URLEncoder.encode(str,encode);
java.net.URLDecoder.decode(str,encode);

这样就构成了统一的编码格式下面举简单的个例子:
在服务器端:
String   encode=java.net.URLEncoder.encode( "大家好 ", "utf-8 ");
//encode=( "%E5%A4%A7%E5%AE%B6%E5%A5%BD "
String   decode=java.net.URLDecoder.decode( "%E5%A4%A7%E5%AE%B6%E5%A5%BD ", "utf-8 ");

客户端解码Javascript:
decodeURIComponent(xmlHttp.responseText);
客户端传送时编码:
encodeURIComponent( "大家好 ")

encodeURI( "大家好 ")
这样就可以解决中文乱码编码问题了

分享到:
评论

相关推荐

    对python中url参数编码与解码的实例详解

    在python中url,对于中文等非ascii码字符,需要进行参数的编码与解码。 二、关键代码 1、url编码 对字符串编码用urllib.parse包下的quote(string, safe=’/’, encoding=None, errors=None)方法。 对json格式的参数...

    PCM编码与解码仿真实验报告.doc

    实验中遇到的问题可能包括信号失真、编码解码不匹配等,解决这些问题通常需要调整编码和解码参数,确保信号处理过程的精确性。在数字通信中,抽样、量化和编码是模拟信号数字化的三个关键步骤。抽样是指按照一定频率...

    曼彻斯特编码、解码

    - 编码函数通常会接收一个二进制数组和长度参数,然后返回一个表示曼彻斯特编码后的数组。 3. **曼彻斯特解码过程**: - 解码过程需要检测信号的电平变化,确定每个位的中间是否有翻转。 - 如果在一个位的中间...

    BCH编码与解码的simulink仿真

    **BCH编码与解码的Simulink仿真详解** BCH(Bose-Chaudhuri-Hocquenghem)编码是一种纠错编码技术,主要用于提高数据传输的可靠性。它由印度科学家Rajchandra Bose、Dipankar Chaudhuri和Frédéric Hocquenghem...

    melp编码、解码源码

    通过研究`encode`和`decode`文件夹中的源代码,我们可以深入理解melp编码解码的细节,以及如何在MATLAB中实现这一过程。 总之,melp编码和解码是语音通信中的关键技术,通过学习和理解这些源码,不仅可以提升MATLAB...

    网页版PDU格式编码_解码

    使用文件名为"在线PDU格式编码_解码 使用AT指令发送中文短信.html"的文件,用户可以访问到主要的使用界面,而"在线PDU格式编码_解码 使用AT指令发送中文短信_files"文件则包含了与界面展示和功能实现相关的辅助文件...

    BCH码的编码和解码全部过程的源代码,可以自行改变参数-BCH

    本压缩包包含的源代码详细展示了BCH码的编码和解码全过程,使读者能够深入理解其实现机制并根据需求进行参数调整。 BCH码的核心思想是通过多项式运算来构造纠错码,它在设计时可以选择不同的参数,如码长n、纠错...

    SNMP编码器解码器SNMP编码解码器

    SNMP(Simple Network Management Protocol,简单网络管理协议)是一种广泛...在实际操作中,我们可以使用各种开源库和工具来实现SNMP编码解码功能,比如Python的pysnmp库,或者其他编程语言的相应库,以简化开发工作。

    VC++ 音频的编码、解码的封装接口

    在VC++编程环境中,音频...总之,VC++中的音频编码解码封装接口设计是一个涉及多方面技术的问题,包括接口设计原则、编码解码算法实现以及优化技巧。理解并掌握这些知识点对于开发高效、灵活的音频处理系统至关重要。

    base64-编码解码工具-python实现源码

    在提供的压缩包文件"base64"中,可能包含了更具体的Base64编码解码工具的实现,例如自定义类或扩展功能。这些源码可以作为学习和理解Base64编码工作原理的实例,也可以作为基础,帮助你开发更复杂的应用,如文件的...

    JPEG_jpeg编码解码_jpeg图像压缩编码_

    以下是关于JPEG编码解码和图像压缩编码的详细知识: 1. **JPEG编码流程**: - **颜色空间转换**:JPEG通常将RGB图像转换为YCbCr颜色空间,因为Y(亮度)分量对人类视觉更重要,Cb和Cr(色度)则可以使用更低的位深...

    基于matlab的jpeg图像编码解码

    在MATLAB中实现JPEG编码解码是一项重要的技能,它涉及到图像处理、数字信号处理和压缩算法等多方面的知识。下面将详细介绍如何在MATLAB中进行JPEG编码与解码,并探讨相关的核心概念和技术。 ### JPEG编码过程 1. *...

    UrlEncodeDecode解码编码工具(双向)

    在IT领域,编码和解码是数据处理的重要环节,特别是在网络通信中。UrlEncode和UrlDecode是两个关键的概念,它们涉及到URL(统一资源定位符)的处理。本工具旨在提供一个方便、高效的解决方案,支持URL编码和解码的...

    java使用URLDecoder和URLEncoder对中文字符进行编码和解码

    在Java编程语言中,`URLDecoder`和`URLEncoder`是两个非常重要的工具类,主要用于处理URL中的中文字符和其他特殊...理解它们的工作原理和使用方法,能帮助开发者避免编码解码过程中的常见问题,保证数据传输的准确性。

    Java 编码解码

    【标题】:“Java 编码解码” 在Java编程中,编码和解码是处理字符集和字节序列的关键操作。编码是指将字符转换为字节的过程,而解码则是相反的过程,即从字节恢复到字符。这些操作在处理不同语言、不同系统间的...

    BCH编码器与解码器的MATLAB实现与性能分析

    本课程设计主要为了进一步理解BCH编码原理和解码原理,并通过MATLAB系统软件来实现对BCH编码与解码,且通过对各个元件的参数进行不同的设置,来观察示波器的波形与误码率并分析BCH的性能。在课程设计中,我们将用到...

    web编码问题小结.doc

    - **URLEncoder/URLDecoder**:属于Java API,用于处理URL参数编码与解码。 - **encodeURI/decodeURI**:JavaScript内置函数,用于编码与解码整个URI。 正确理解并运用这些编码机制,是解决Web开发中字符编码问题...

    基于JPEG2000的图像编码与解码c++版

    JPEG2000是一种先进的数字图像编码标准,...对于"JPEG2000"压缩包中的文件,可能包含了C++代码示例、库文件、头文件等,开发者可以通过阅读和分析这些文件,深入了解JPEG2000编码解码的实现细节,并用于自己的项目中。

    PHP UCS2编码,解码

    本文将深入探讨PHP中UCS2(Unicode Character Set, 16-bit)编码与解码的实现,以及它在手机发送短信场景中的应用。 UCS2是Unicode标准的一个早期版本,它使用16位的二进制表示每个字符,能够覆盖Unicode基本多文种...

Global site tag (gtag.js) - Google Analytics