Java实现浏览器链接地址的中文加密和解密

来源:互联网 发布:matlab从文件读取数据 编辑:程序博客网 时间:2024/05/17 01:18

                                                                                                Java实现浏览器链接地址的中文加密和解密

一:在好些的网站上进行相关的中文搜索的时候,发现点击搜索后留意了链接中的中文的变化,全部变成了加密后的字符串了.那么问题来了,java怎么实现这样的漂亮的加密的字符串了?

     1.1案例展示--->来看51job上的例如搜索前端工程师:

    

      1.2:原理分析--->简单分析 %25+16进制的,这个就想到了java中net包下的URLEncoder(加密),URLDecoder(解密),

           urlencode()函数原理就是首先把中文字符转换为十六进制,然后在每个字符前面加一个标识符%<urldecode()函数与        urlencode()函数原理相反,用于解码已编码的 URL 字符串,其原理就是把十六进制字符串转换为中文字符
     但是前面还有一个25那?这个怎么实现,就是二次加密了。

    1.3:源码展示--->

import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder;/*** Title:UrlEncode  * Description:  * @date 2017年9月19日* %25E8%25AE%25BE的解码:设  -----------------    设的编码为:%25E8%25AE%25BE*  */public class UrlEncode {   public static void main(String[] args) {//两次解密就可以了try {String str=URLDecoder.decode("%25E8%25AE%25BE","UTF-8");//二次解码System.out.println("%25E8%25AE%25BE的解码:"+(URLDecoder.decode(str,"UTF-8")));System.out.println("-----------------");    String str1=URLEncoder.encode("设","UTF-8");    //二次编码    System.out.println("设的编码为:"+(URLEncoder.encode(str1,"UTF-8")));} catch (UnsupportedEncodingException e) {e.printStackTrace();} }}

运行结果展示:
 %25E8%25AE%25BE的解码:设
-----------------
设的编码为:%25E8%25AE%25BE
        1.4:至此Java实现浏览器的地址中文的编码和解密就可以完成了.


原创粉丝点击