JAVA实现base64编码的三种实现方式

来源:互联网 发布:帝国cms 审核字段 编辑:程序博客网 时间:2024/06/03 19:13


package cn.test;import java.io.IOException;import org.apache.commons.codec.binary.Base64;import sun.misc.BASE64Decoder;import sun.misc.BASE64Encoder;public class testbase {/** * 随机定义一个字符串测试base64的加解密技术 */private static String src = "imooc base64";public static void main(String[] args) {//jdkBase64();//CommonsCodecBase64();bouncyCastleBase64();}/** * 使用JDK原生方法实现base64加密 */public static void jdkBase64() {try {BASE64Encoder encoder = new BASE64Encoder();String jdkEncode = encoder.encode(src.getBytes());System.out.println("JDKEncode-->" + jdkEncode);BASE64Decoder decoder = new BASE64Decoder();System.out.println("JDKDecode-->" + new String(decoder.decodeBuffer(jdkEncode)));} catch (IOException e) {e.printStackTrace();};}/** * 使用commons.codecJAR的方式实现base64加解密技术 */public static void CommonsCodecBase64(){byte[] CCEncode = Base64.encodeBase64(src.getBytes());System.out.println("CCEncode-->" + CCEncode);byte[] CCDecode = Base64.decodeBase64(CCEncode);System.out.println("CCDecode-->" + new String(CCDecode));}/** * 用bouncy Castle的方式实现base64加解密技术 */public static void bouncyCastleBase64(){byte[] BCEncode = org.bouncycastle.util.encoders.Base64.encode(src.getBytes());System.out.println("BCEncode-->" + BCEncode);byte[] BCDecode = org.bouncycastle.util.encoders.Base64.decode(BCEncode);System.out.println("BCDecode-->" + new String(BCDecode));}}
对于两个jar包在网上找了好久测试都不能用,自己是通过maven下载到本地仓库然后复制到另一个项目进行测试的,其他小伙伴测试的时候如果遇到类似问题可以参考解决思路。