转:
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,对于中文等非ascii码字符,需要进行参数的编码与解码。 二、关键代码 1、url编码 对字符串编码用urllib.parse包下的quote(string, safe=’/’, encoding=None, errors=None)方法。 对json格式的参数...
实验中遇到的问题可能包括信号失真、编码解码不匹配等,解决这些问题通常需要调整编码和解码参数,确保信号处理过程的精确性。在数字通信中,抽样、量化和编码是模拟信号数字化的三个关键步骤。抽样是指按照一定频率...
- 编码函数通常会接收一个二进制数组和长度参数,然后返回一个表示曼彻斯特编码后的数组。 3. **曼彻斯特解码过程**: - 解码过程需要检测信号的电平变化,确定每个位的中间是否有翻转。 - 如果在一个位的中间...
**BCH编码与解码的Simulink仿真详解** BCH(Bose-Chaudhuri-Hocquenghem)编码是一种纠错编码技术,主要用于提高数据传输的可靠性。它由印度科学家Rajchandra Bose、Dipankar Chaudhuri和Frédéric Hocquenghem...
通过研究`encode`和`decode`文件夹中的源代码,我们可以深入理解melp编码解码的细节,以及如何在MATLAB中实现这一过程。 总之,melp编码和解码是语音通信中的关键技术,通过学习和理解这些源码,不仅可以提升MATLAB...
使用文件名为"在线PDU格式编码_解码 使用AT指令发送中文短信.html"的文件,用户可以访问到主要的使用界面,而"在线PDU格式编码_解码 使用AT指令发送中文短信_files"文件则包含了与界面展示和功能实现相关的辅助文件...
本压缩包包含的源代码详细展示了BCH码的编码和解码全过程,使读者能够深入理解其实现机制并根据需求进行参数调整。 BCH码的核心思想是通过多项式运算来构造纠错码,它在设计时可以选择不同的参数,如码长n、纠错...
SNMP(Simple Network Management Protocol,简单网络管理协议)是一种广泛...在实际操作中,我们可以使用各种开源库和工具来实现SNMP编码解码功能,比如Python的pysnmp库,或者其他编程语言的相应库,以简化开发工作。
在VC++编程环境中,音频...总之,VC++中的音频编码解码封装接口设计是一个涉及多方面技术的问题,包括接口设计原则、编码解码算法实现以及优化技巧。理解并掌握这些知识点对于开发高效、灵活的音频处理系统至关重要。
在提供的压缩包文件"base64"中,可能包含了更具体的Base64编码解码工具的实现,例如自定义类或扩展功能。这些源码可以作为学习和理解Base64编码工作原理的实例,也可以作为基础,帮助你开发更复杂的应用,如文件的...
以下是关于JPEG编码解码和图像压缩编码的详细知识: 1. **JPEG编码流程**: - **颜色空间转换**:JPEG通常将RGB图像转换为YCbCr颜色空间,因为Y(亮度)分量对人类视觉更重要,Cb和Cr(色度)则可以使用更低的位深...
在MATLAB中实现JPEG编码解码是一项重要的技能,它涉及到图像处理、数字信号处理和压缩算法等多方面的知识。下面将详细介绍如何在MATLAB中进行JPEG编码与解码,并探讨相关的核心概念和技术。 ### JPEG编码过程 1. *...
在IT领域,编码和解码是数据处理的重要环节,特别是在网络通信中。UrlEncode和UrlDecode是两个关键的概念,它们涉及到URL(统一资源定位符)的处理。本工具旨在提供一个方便、高效的解决方案,支持URL编码和解码的...
在Java编程语言中,`URLDecoder`和`URLEncoder`是两个非常重要的工具类,主要用于处理URL中的中文字符和其他特殊...理解它们的工作原理和使用方法,能帮助开发者避免编码解码过程中的常见问题,保证数据传输的准确性。
【标题】:“Java 编码解码” 在Java编程中,编码和解码是处理字符集和字节序列的关键操作。编码是指将字符转换为字节的过程,而解码则是相反的过程,即从字节恢复到字符。这些操作在处理不同语言、不同系统间的...
本课程设计主要为了进一步理解BCH编码原理和解码原理,并通过MATLAB系统软件来实现对BCH编码与解码,且通过对各个元件的参数进行不同的设置,来观察示波器的波形与误码率并分析BCH的性能。在课程设计中,我们将用到...
- **URLEncoder/URLDecoder**:属于Java API,用于处理URL参数编码与解码。 - **encodeURI/decodeURI**:JavaScript内置函数,用于编码与解码整个URI。 正确理解并运用这些编码机制,是解决Web开发中字符编码问题...
JPEG2000是一种先进的数字图像编码标准,...对于"JPEG2000"压缩包中的文件,可能包含了C++代码示例、库文件、头文件等,开发者可以通过阅读和分析这些文件,深入了解JPEG2000编码解码的实现细节,并用于自己的项目中。
本文将深入探讨PHP中UCS2(Unicode Character Set, 16-bit)编码与解码的实现,以及它在手机发送短信场景中的应用。 UCS2是Unicode标准的一个早期版本,它使用16位的二进制表示每个字符,能够覆盖Unicode基本多文种...