Guava如何进行encoding和decoding呢?
下文笔者讲述使用Guava进行编码和解码的方法分享,如下所示
encoding和decoding的示例
实现思路: 使用google的common.io.BaseEncoding 即可实现编码和解码的效果例:
encoding和decoding的示例
package com.java265.io.base64; import com.google.common.io.BaseEncoding; import org.junit.Test; public class BaseEncodingTest { @Test public void testBase64Encode(){ BaseEncoding baseEncoding = BaseEncoding.base64(); System.out.println(baseEncoding.encode("java265.com".getBytes())); } @Test public void testBase64Decode(){ BaseEncoding baseEncoding = BaseEncoding.base64(); System.out.println(new String(baseEncoding.decode("amF2YTI2NS5jb20=="))); } } --------运行以上代码,将输出以下信息----- amF2YTI2NS5jb20== java265.com
base64简介
Base64是一种基于64个可打印字符来表示二进制数据的表示方法 由于所以每6个比特为一个单元 对应某个可打印字符。 3个字节有24个比特,对应于4个Base64单元, 即3个字节可由4个可打印字符来表示。 它可用来作为电子邮件的传输编码。 在Base64中的可打印字符包括字母A-Z、a-z、数字0-9, 这样共有62个字符,此外两个可打印符号在不同的系统中而不同。 一些如uuencode的其他编码方法,和之后BinHex的版本使用不同的64字符集来代表6个二进制数字, 但是不被称为Base64。
base64使用场景
Base64常用于在通常处理文本数据时, 用于表示、传输、存储一些二进制数据 如:MIME的电子邮件及XML的一些复杂数据
Base64如何编码
将比特流: 01000100010011101100111010111100011001010...... 按6个比特为一组,并计算出ASCII值,然后转换为字符
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。