使用JDK的类 BASE64Decoder  BASE64Encoder

  1. package test;
  2. import sun.misc.BASE64Decoder;
  3. import sun.misc.BASE64Encoder;
  4. /**
  5. * BASE64加密解密
  6. */
  7. public class BASE64
  8. {
  9. /**
  10. * BASE64解密
  11. * @param key
  12. * @return
  13. * @throws Exception
  14. */
  15. public static byte[] decryptBASE64(String key) throws Exception {
  16. return (new BASE64Decoder()).decodeBuffer(key);
  17. }
  18. /**
  19. * BASE64加密
  20. * @param key
  21. * @return
  22. * @throws Exception
  23. */
  24. public static String encryptBASE64(byte[] key) throws Exception {
  25. return (new BASE64Encoder()).encodeBuffer(key);
  26. }
  27. public static void main(String[] args) throws Exception
  28. {
  29. String para = "{\"IdList1\": 1,\"IdList2\": [1,2,3,4,5,6,18],\"IdList3\": [1,2]}";
  30. String data = BASE64.encryptBASE64(para.getBytes());
  31. System.out.println("加密前:"+data);
  32. byte[] byteArray = BASE64.decryptBASE64(data);
  33. System.out.println("解密后:"+new String(byteArray));
  34. }
  35. }

使用Apache commons codec 类Base64获取【下载地址】

  1. package test;
  2. import java.io.UnsupportedEncodingException;
  3. import org.apache.commons.codec.binary.Base64;
  4. public class Base64Util {
  5. public static String encode(byte[] binaryData) throws UnsupportedEncodingException {
  6. return new String(Base64.encodeBase64(binaryData), "UTF-8");
  7. }
  8. public static byte[] decode(String base64String) throws UnsupportedEncodingException {
  9. return Base64.decodeBase64(base64String.getBytes("UTF-8"));
  10. }
  11. public static void main(String[] args) throws UnsupportedEncodingException {
  12. String para = "{\"IdList1\": 1,\"IdList2\": [1,2,3,4,5,6,18],\"IdList3\": [1,2]}";
  13. String data = Base64Util.encode(para.getBytes());
  14. System.out.println("加密前:"+data);
  15. byte[] byteArray = Base64Util.decode(data);
  16. System.out.println("解密后:"+new String(byteArray));
  17. }
  18. }

Java Base64 加密解密的更多相关文章

  1. password学3——Java BASE64加密解密

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之中的一个,大家能够查看RFC2045-RFC2049.上面有MIME的具体规范.Base64编码可用于在HTTP环境下传递较长的标识信息 ...

  2. Java Base64加密解密

    使用Apache commons codec 类Base64 maven依赖 <dependency> <groupId>commons-codec</groupId&g ...

  3. Java Base64 加密/解密

    Base64常用来表示字串加密过后的内容,使用Java 程式语言来实作Base64的编码与解码功能 1.在Java上做Base64的编码与解码,会使用到JDK里sun.misc套件下的BASE64En ...

  4. Java中使用BASE64加密&解密

    package com.bao.tools.encryption; import java.io.IOException; import org.junit.Test; import sun.misc ...

  5. Java Base64加密、解密原理Java代码

    Java Base64加密.解密原理Java代码 转自:http://blog.csdn.net/songylwq/article/details/7578905 Base64是什么: Base64是 ...

  6. Java android DES+Base64加密解密

    服务器与客户端加密解密传输, 中间遇到各种坑,客户端无论用AES还是DES解密时都会出现错误,后来才看到好多人说要用AES/DES加完密后还要BASE64加密,照做时发现android和java的Ba ...

  7. Java语言实现 Base64 加密 & 解密

    Java语言实现 Base64 加密 & 解密 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法. Base64 ...

  8. 使用jframe编写一个base64加密解密工具

    该工具可以使用exe4j来打包成exe工具(如何打包自己百度) 先上截图功能 运行main方法后,会弹出如下窗口 输入密文 然后点击解密,在点格式化 代码分享 package tools;import ...

  9. C# 实现 JAVA AES加密解密[原创]

    以下是网上普遍能收到的JAVA AES加密解密方法. 因为里面用到了KeyGenerator 和 SecureRandom,但是.NET 里面没有这2个类.无法使用安全随机数生成KEY. 我们在接收J ...

随机推荐

  1. Java多线程之新类库中的构件DelayQueue

    DelayQueue 是一个无界的BlockingQueue,用于放置实现了Delayed接口的对象,其中的对象只能在其到期时才能从队列中取走.这种队列是有序的,即队头对象的延迟到期时间最长.注意:不 ...

  2. 保持UIImagePickerController后导航栏风格统一

    1. UIImagePickerController 状态栏始终保持某一种风格. -(void)navigationController:(UINavigationController *)navig ...

  3. [UIView beginAnimations:context:]与[UIView animateWithDuration:animations:]值得注意的一个区别

    原文链接:http://longtimenoc.com/archives/uiview-beginanimationscontext%E4%B8%8Euiview-animatewithduratio ...

  4. ruby字符串学习笔记5

    1获取字符串某部分 s = "My kingdom for a string!" s.slice(3,7) # kingdom s[3,7] # kingdom s[/.ing/] ...

  5. Jmeter-Maven-Plugin高级应用:Selecting Tests To Run

    地址:https://github.com/jmeter-maven-plugin/jmeter-maven-plugin/wiki/Advanced-Configuration Selecting ...

  6. CentOS 7 安装无线驱动

    一.确认网卡的版本 lspci | grep Network [root@bogon ~]# lspci | grep Network :) :) [root@bogon ~]# 二.下载网卡的驱动, ...

  7. vs报算术运算溢出的错误

    是因为查询的数据量太大,把数据量减少点就不会报这个错了. 或者查询速度快点比如加索引也可能解决,待确定.

  8. [ActionScript 3.0] AS3 3D双圆环贴图

    package { import flash.display.Bitmap; import flash.display.BitmapData; import flash.display.MovieCl ...

  9. char 汉字

    Unicode/UCS总结: UCS和Unicode使用最大32bit来表示字符(它的范围很大,但不一定全使用,常使的是UCS-2),它用2~4个字节的空间描述了已知的接近全部的字符(并且仍在更新,还 ...

  10. C# String.Format大全 去 decimal 后面的 0

    转 http://kwon.iteye.com/blog/1068255  http://blog.csdn.net/tvvbbb/article/details/47256943 public st ...