`

JAVA URLEncoder 与URLDecoder 问题

阅读更多

今天发现两个关于java URL编码解码的误区:

1:URLEncoder 进行编码两次 值是一样的 ?

 

String aa="测试";
String test=URLEncoder.encode(aa,"UTF-8");
System.out.println(test);
System.out.println(URLEncoder.encode(test,"UTF-8"));

 output:

 

 

%E6%B5%8B%E8%AF%95
%25E6%25B5%258B%25E8%25AF%2595

 原来URLEncoder  进行编码时使用%作为转义标记,除了字符"a"-"z","A"-"Z","0"-"9",".","-","*",和"_"  ,空格转换为加号 (+) 外,都转换成"%xy"的形式,xy是两位16进制的数值;

 

 无论什么编码 百分号还是会编码为%25 这样的话无论编码多少次结果都会不一样。

 

2:URLDecoder 解码汉字会与原文不同?

如上述所示:URLDecoder 解码会找+ 号和%xy 进行解码,其他值都会不变。所以下面程序是

String aa="测试+测试%25";
String test2=URLDecoder.decode(aa,"UTF-8");
System.out.println(test2);

  output:

测试 测试%

 

 

分享到:
评论

相关推荐

    java中的URLEncoder和URLDecoder类.docx

    在 Java 中,URLEncoder 和 URLDecoder 是两个非常重要的类,它们用于处理 URL 编码和解码问题。在本文中,我们将深入探讨这两个类的使用方法、特点和应用场景。 一、URLEncoder 类 URLEncoder 类是一个静态类,它...

    URLEncoder与URLDecoder的应用

    在Java编程语言中,`URLEncoder`与`URLDecoder`是处理URL编码和解码的两个重要工具类。它们主要应用于对字符串进行编码或解码,确保这些字符串能够安全地在网络上传输。尤其是在处理包含特殊字符(如中文字符)的...

    j2ME URLEncoder Vs URLDEcoder

    4. 兼容性:虽然J2ME的API可能与标准Java SE有所不同,但URLEncoder和URLDecoder的基本功能在大多数J2ME实现中都是可用的。然而,由于不同设备和平台的差异,测试和适配仍然是必要的。 5. 注意URL规范:在处理URL时...

    使用URLDecoder和URLEncoder 区别

    URLDecoder 和 URLEncoder 的使用与区别 URLDecoder 和 URLEncoder 是 Java 中两个重要的类,它们用于完成普通字符串和 application/x-www-form-urlencoded MIME 字符串之间的相互转换。在 Web 开发中,字符串之间...

    J2ME URLEncoder 和 URLDecoder 类的实现

    在Java Micro Edition (J2ME)环境中,开发者可能会遇到一个问题:标准Java API中的一些功能可能并未包含在其中,比如`URLEncoder`和`URLDecoder`类。这两个类在标准Java SE环境中用于对URL字符串进行编码和解码,以...

    java中URLEncoder.encode与URLDecoder.decode处理url特殊参数的方法

    其中,`encodeURIComponent()` 与Java的 `URLEncoder.encode()` 类似,适用于大多数情况,因为它不会编码 `/`、`:`、`;`、`?`、`@`、`&`、`=`、`+` 和 `,` 这些在URL中具有特殊意义的字符。 总结来说,理解并正确...

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

    在Java编程语言中,`URLDecoder`和`URLEncoder`是两个非常重要的工具类,主要用于处理URL中的中文字符和其他特殊字符。这两个类位于`java.net`包下,可以帮助开发者进行字符串编码和解码,确保数据在网络传输过程中...

    Java中的UrlDecoder 和 UrlEncoder_动力节点Java学院整理

    Java中的`UrlDecoder`和`UrlEncoder`是两个非常重要的工具类,主要用于处理URL编码和解码的问题。在Web开发中,特别是在HTTP请求和响应中,URL编码是必不可少的步骤,因为URL中不能包含某些特殊字符,如空格、中文...

    UrlDecoder和UrlEncoder使用详解_动力节点Java学院整理

    UrlDecoder和UrlEncoder是Java语言中两个重要的工具类,分别用于URL编码和解码。下面是对这两个类的详细介绍和使用方法。 一、UrlEncoder UrlEncoder是Java语言中一个静态方法的工具类,用于将String转换为...

    java 使用URLDecoder和URLEncoder对中文进行处理

    在Java编程语言中,URLDecoder和URLEncoder是两个非常重要的工具类,主要用于处理URL(统一资源定位符)中的中文字符。这是因为URL的标准格式不支持直接包含非ASCII字符,特别是中文等多字节字符,需要进行特定的...

    Java实现url加密处理的方法示例

    在Java中,可以使用`java.net.URLEncoder.encode()`方法对加密字符串进行编码,解码则使用`java.net.URLDecoder.decode()`。 7. **异常处理**:在实际应用中,应更全面地处理可能抛出的异常,包括捕获并记录异常...

    java编程中乱码问题解决

    为了解决这个问题,可以使用`URLEncoder`和`URLDecoder`类来对参数进行编码和解码操作。 示例代码如下: ```java public class EnDecoderUtil { public static void main(String[] args) { try { String str = ...

    java网络编程实例.rar

    8. **URL和URLEncoder/URLDecoder**:`java.net.URL`类用于表示统一资源定位符,而`URLEncoder`和`URLDecoder`则用于对URL中的参数进行编码和解码,以符合URL规范。 9. **FTP和SMTP**:Java还提供了`java.net`包下...

    深入分析 Java 中的中文编码问题

    五、URLDecoder与URLEncoder 在网络请求中,URL可能包含中文字符,这时需要使用`URLEncoder`进行编码,`URLDecoder`进行解码。例如: ```java String encodedUrl = URLEncoder.encode("你好", "UTF-8"); String ...

    java中文乱码字符集解决大全.pdf

    大多数浏览器默认使用UTF-8编码传递参数,因此,服务器端接收中文参数时,需确保正确解码,如使用URLEncoder/URLDecoder进行编码解码。 总结,Java中文乱码问题涉及多个层面,包括源文件编码、编译过程、执行环境...

    Java爬取 百度图片&Google图片&Bing图片

    Java的URLEncoder和URLDecoder类可以帮助我们完成这一任务。 5. **文件下载与存储**:抓取到的图片链接需要下载到本地。Java的FileInputStream和FileOutputStream可以用来读写文件,而URL的openStream()方法可以...

    eclipse插件,驼峰下划线互转

    1.驼峰下换线互转 2.拼接前缀、后缀 3.urlencoder、urldecoder

    java中文乱码之解决URL中文乱码问题的方法

    - Java标准库提供了`java.net.URLDecoder` 和 `java.net.URLEncoder` 类,可以用于编码和解码URL。在某些场景下,它们可能比直接操作字符串更安全和方便。 总之,解决Java中的URL中文乱码问题需要理解URL编码的...

    《Java程序设计基础》课程标准(高职).docx

    1. 网络通信:涉及IP地址、InetAddress类、URL与URLConnection、URLEncoder与URLDecoder的使用,以及ServerSocket和Socket类的TCP和UDP程序设计。学生需要掌握InetAddress和Socket类的方法,理解并能实现数据报的...

Global site tag (gtag.js) - Google Analytics