BASE64加解密

相应的maven依赖
	<dependency>
		<groupId>commons-codec</groupId>
		<artifacctId>commons-codec</artifactId>
		<version>1.15</version>
	</dependency>
	<dependency>
		<groupId>org.bouncycastle</groupId>
		<artifactId>bcprov-jdk15on</artifactId>
		<version>1.68</version>
	</dependency>
	<dependency>
		<groupId>cn.hutool</groupId>
		<artifactId>hutool-all</artifactId>
		<version>5.0.7</version>
	</dependency>
代码实现

import cn.hutool.core.codec.Base64;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

import java.io.IOException;

public class Base64Demo {

    private String data = "base64";

    public void jdkBase64() throws IOException {
        BASE64Encoder base64Encoder = new BASE64Encoder();
        String encode = base64Encoder.encode(data.getBytes());
        System.out.printf("JDKBase64 base64Encoder : %s \r\n", encode);
        BASE64Decoder base64Decoder = new BASE64Decoder();
        byte[] bytes = base64Decoder.decodeBuffer(encode);
        System.out.printf("JDKBase64 base64Encoder : %s \r\n", new String(bytes));
    }

    /**
     * 对jdk做了封装
     */
    public void hutoolBase64() {
        String encode = Base64.encode(data.getBytes());
        byte[] decode = Base64.decode(encode.getBytes());
        System.out.printf("hutoolBase64 base64Encoder : %s \r\n", encode);
        System.out.printf("hutoolBase64 base64Encoder : %s \r\n", new String(decode));
    }

    public void codecBase64() {
        byte[] encodeBase64 = org.apache.commons.codec.binary.Base64.encodeBase64(data.getBytes());
        byte[] decodeBase64 = org.apache.commons.codec.binary.Base64.decodeBase64(encodeBase64);
        System.out.printf("codecBase64 base64Encoder : %s \r\n", new String(encodeBase64));
        System.out.printf("codecBase64 base64Encoder : %s \r\n", new String(decodeBase64));
    }

    public void bouncycastleBase64() {
        byte[] encode = org.bouncycastle.util.encoders.Base64.encode(data.getBytes());
        byte[] decode = org.bouncycastle.util.encoders.Base64.decode(encode);
        System.out.printf("bouncycastleBase64 base64Encoder : %s \r\n", new String(encode));
        System.out.printf("bouncycastleBase64 base64Encoder : %s \r\n", new String(decode));
    }
}
输出结果:
JDKBase64 base64Encoder : YmFzZTY0 
JDKBase64 base64Encoder : base64 
hutoolBase64 base64Encoder : YmFzZTY0 
hutoolBase64 base64Encoder : base64 
codecBase64 base64Encoder : YmFzZTY0 
codecBase64 base64Encoder : base64 
bouncycastleBase64 base64Encoder : YmFzZTY0 
bouncycastleBase64 base64Encoder : base64 
posted @ 2018-12-21 11:23  一菜鸟一  阅读(979)  评论(0编辑  收藏  举报