开发者

java中URLencode、URLdecode及Base64加解密转换

目录
  • 一、URLencode、URLdecode
  • 二、Base64加解密
  • 三、高效方法:
  • 四、Java 8之后的作法

一、URLencode、URLdecode

// 将application/x-www-from-urlencoded字符串转换成普通字符串  
        String keyWord = URLDecoder.decode("%E4%BD%A0%E5%A5%BD", "utf-8");  
        System.out.println(keyWord);  //输出你好

        // 将普通字符创转换成application/x-www-from-urlencoded字符串  
        String urlString = URLEncoder编程客栈.encode("你好js", "utf-8");  //输出%E4%BD%A0%E5%A5%BD
        System.out.println(urlString);

二、Base64加解密

Base64 base64 = new Base64();

       String encodeText = base64.encodeToString("123456");//加密
       String decodeText = base64.decode(encodedText), "UTF-8");//解密

三、高效方法:

final Base64.Decoder decoder = Base64.getDecoder();
final Base64.Encoder encoder = Base64.gepythontEncoder();
final String text = "字串文字";
final byte[] textByte = text.getBytes("UTF-8");
//编码
final String encodedText = encoder.encodeToString(textByte);
System.out.println(encodedText);
//解码
System.out.println(new String(decoder.decode(encodedText)android, "UTF-8"));

四、Java 8之后的作法

Java 8的java.util套件中,新增了Base64的类别,可以用来处理Base64的编码与解码,用法如下:

final Base64.Decoder decoder = Base64.getDecoder();
final Base64.Encoder encoder = Base64.getEncoder();
final String text = "字串文字";
final byte[] textByte = text.getBytes("UTF-8");
//编码
final String encodedText = encoder.encodeToString(textByte);
System.out.println(encodedText);
//解码
System.out.println(new String(decoder.decode(encodedText), "UTF-8"));

与sun.mis c套件和Apache Commons Codec所提供的Base64编解码器来比较的话,Java 8提供的Base64拥有更好的效能。实际测试编码与解码速度的话,Java 8提供的Base64,要比sun.mis c套件提供的还要快至少11倍,比Apache Commons Codec提供的还要快至少3倍。因此在J编程ava上若要使用Base64,这个Java 8底下的java .util套件所提供的Base64类别绝对是首选!

到此这篇关于java中URLencode、URLdecode及Base64加解密转换的文章就介绍到这了,更多相关java中URLencode、URLdecode及Base64加解密内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新开发

开发排行榜