`
geelong
  • 浏览: 117300 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

java 中访问url 传参数的方法 encode和decode次数的问题

阅读更多

http://abc  是一个接口

当在Java中向它传参数时

需要URLEncoder.encode() 一下

 

在接口的程序中,它会用URLDecoder.decode() 一下

 

不然会出现乱码等问题

 

 

double encode

 

  try{
        System.out.println(URLEncoder.encode("我是","UTF-8"));
        System.out.println(URLEncoder.encode(URLEncoder.encode("我是","UTF-8"),"UTF-8"));
         }catch(Exception e){}
         %E6%88%91%E6%98%AF
         %25E6%2588%2591%25E6%2598%25AF

不同的

 

 

double decode 非encode的文字

 

 try{
         System.out.println(URLDecoder.decode("我是","UTF-8"));
         System.out.println(URLDecoder.decode(URLDecoder.decode("我是","UTF-8"),"UTF-8"));
          }catch(Exception e){}
          我是
          我是

 

内容不变

 

 

double decode 一次encode的文字

 

  try{
         System.out.println(URLDecoder.decode(" %E6%88%91%E6%98%AF","UTF-8"));
         System.out.println(URLDecoder.decode(URLDecoder.decode(" %E6%88%91%E6%98%AF","UTF-8"),"UTF-8"));
          }catch(Exception e){}
          我是
          我是

解码后则内容不再变,和encode不同

 

 

 

double decode 两次encode的文字

  try{
         System.out.println(URLDecoder.decode(" %25E6%2588%2591%25E6%2598%25AF","UTF-8"));
         System.out.println(URLDecoder.decode(URLDecoder.decode(" %25E6%2588%2591%25E6%2598%25AF","UTF-8"),"UTF-8"));
          }catch(Exception e){}
          %E6%88%91%E6%98%AF
          我是

 

结论:encode会不断的改变编码,decode得到原来的编码后,则不会再改变

 

 

 

 

 

 

分享到:
评论

相关推荐

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

    `URLEncoder.encode()` 和 `URLDecoder.decode()` 是Java标准库中的两个关键方法,分别用于对URL参数进行编码和解码,以确保数据能够正确无误地在网络间传输。 **`URLEncoder.encode()`** 方法接受两个参数:需要...

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

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

    java net unicode / native2ascii / url decode / url encode / UTF8 / js url code

    标题中的“java net unicode / native2ascii / url decode / url encode / UTF8 / js url code”涉及了Java网络编程中的几个关键概念,这些概念在处理字符编码时非常重要。以下是对这些概念的详细解释: 1. **...

    URL参数加密解密(java版)

    - 即使是Base64编码后的字符串,也可能包含URL非法字符,需要使用`java.net.URLEncoder.encode()`和`java.net.URLDecoder.decode()`进行URL编码和解码。 5. **示例代码**: ```java import javax.crypto.Cipher;...

    JS的encodeURI和java的URLDecoder.decode使用介绍

    如果不想在url中看到有明文,比如http://localhost:8080/template_1/login.action?user=张三 可以使用js的encodeURI的URLDecoder.decode一起使用一起来把url加密下 (1)JS在页面上把数据var val = encodeURI...

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

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

    UrlEncodeUrlDecodeUrl解码Url编码工具

    UrlEncode和UrlDecode在实际应用中非常广泛,例如在HTTP请求参数、表单提交、链接重写等场景。开发者通常会使用编程语言内置的函数或库来处理URL编码和解码,但这个工具提供了一个直观且便捷的界面,使得非程序员也...

    servlet url传递中文参数

    总之,处理Servlet中URL传递的中文参数需要理解URL编码的原理,并正确使用Java的相关API进行编码和解码。同时,注意字符集的设置,确保数据在传输过程中不会出现乱码。在开发过程中,合理利用工具和库函数,可以提高...

    jsurl传值java页面url传值中文编码&解码共2页

    在JavaScript和Java中,处理URL参数,特别是涉及到中文字符时,需要特别关注编码和解码的问题。本主题将深入探讨“jsurl传值”与“java页面url传值中文编码&解码”的相关知识点。 首先,我们要了解URL编码。URL编码...

    java中文乱码解决之道(8)解决URL中文乱码问题Jav

    1. **URL编码**:在Java中,我们可以使用`java.net.URLEncoder.encode()`方法对URL中的参数进行编码。但默认情况下,这个方法使用的是ISO-8859-1字符集,不支持中文。因此,我们需要显式指定字符集为UTF-8: ```...

    extjs 前后台交互参数出现中文乱码问题的解决方法

    在后端服务器端(例如Java环境下),可以通过`java.net.URLDecoder.decode()`方法对已编码的中文参数进行解码。具体代码如下: ```java import java.io.UnsupportedEncodingException; import java.net.URLDecoder;...

    java解析php函数json_encode unicode 编码问题

    在Java开发和PHP服务器交互过程中,经常需要处理JSON数据的编码和解码问题。本文重点讲解了在使用PHP函数json_encode进行JSON编码时出现的unicode编码问题,以及Java客户端如何正确解析由PHP生成的JSON字符串。 ...

    JSP对URL链接中的中文乱码处理方法总结.docx

    JSP 对 URL 链接中的中文乱码处理方法总结 JSP 对 URL 链接中的中文乱码处理方法总结是指在 ...解决 JSP 对 URL 链接中的中文乱码问题需要考虑到浏览器、服务器和编码方式的差异,选择合适的方法来避免中文乱码问题。

    url特殊字符处理方法

    在Java中,使用java.net.URLEncoder.encode(String s)和java.net.URLDecoder.decode(String s)函数来进行URL的编码和解码。在JavaScript中,使用escape(String s)和unescape(String s)函数来进行URL的编码和解码。 ...

    URL传中文参数导致乱码的解决方案之encodeURI

    在Java环境中,可以使用`java.net.URLDecoder`类的`decode`方法,指定UTF-8编码来解码URL参数。例如: ```java String starName = java.net.URLDecoder.decode(request.getParameter("star_name"), "UTF-8"); ``` ...

    servlet获取url相关参数

    综上所述,Servlet提供了一系列方法来方便地获取和处理URL中的各种参数,这些参数在Web应用程序中起着至关重要的作用,帮助我们构建功能丰富的交互式服务。理解并熟练运用这些方法,是成为一名合格的Java Web开发者...

    淘宝 url 解码和编码方法(转的)

    淘宝作为中国最大的电商平台,其URL中可能包含各种参数,这些参数需要进行正确的编码和解码以确保数据传输的准确性和安全性。本篇文章将详细探讨淘宝URL的编码和解码方法,以及如何利用Java编程语言实现这一过程。 ...

    【Java】中常见的URL问题及解决方案Java基础教程.docx

    总结,理解和正确处理URL编码、路径与查询参数的分离、以及使用适当的工具如`URLEncoder`、`URI`和`URIBuilder`是Java中处理URL的关键。在实际编程中,必须确保URL的正确性,以避免网络请求失败或数据解析错误。同时...

    Java实现的生成二维码和解析二维码URL操作示例

    Java 实现生成二维码和解析二维码 URL 操作示例 Java 是一种广泛使用的编程语言,具有强大的功能和灵活性。在实际应用中,生成二维码和解析二维码 URL 是非常常见的操作。本文将详细介绍 Java 实现生成二维码和解析...

    URL中文转换

    2. 使用`java.net.URLDecoder.decode()`方法:在Android中,可以使用URLDecoder类的`decode()`方法对URL进行解码。例如: ```java String encodedUrl = "%E4%B8%AD"; String decodedStr = URLDecoder.decode...

Global site tag (gtag.js) - Google Analytics