java中URLencode、URLdecode及Base64加解密转换
一、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("你好", "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.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"));
四、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倍。因此在Java上若要使用Base64,这个Java 8底下的java .util套件所提供的Base64类别绝对是首选!
到此这篇关于java中URLencode、URLdecode及Base64加解密转换的文章就介绍到这了,更多相关java中URLencode、URLdecode及Base64加解密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java修饰符 abstract,static,final 的区别详解
以下是对Java修饰符abstract,static,final的区别进行了详细的介绍,需要的朋友可以过来参考下2013-09-09java.lang.Void 与 void的比较及使用方法介绍
这篇文章主要介绍了java.lang.Void 与 void的比较及使用方法介绍,小编觉得挺不错的,这里给大家分享一下,需要的朋友可以参考。2017-10-10
最新评论