java使用apache commons codec来进行Base64加密解密
import org.apache.commons.codec.binary.Base64;
public class Base64Test1 {
/**
* 作者:*TODO 使用Base64加密算法加密字符串
* return
*/
public static String encodeStr(String plainText){
byte[] b=plainText.getBytes();
Base64 base64=new Base64();
b=base64.encode(b);
String s=new String(b);
return s;
}
/**
* 作者:*TODO 使用Base64加密
* return
*/
public static String decodeStr(String encodeStr){
byte[] b=encodeStr.getBytes();
Base64 base64=new Base64();
b=base64.decode(b);
String s=new String(b);
return s;
}
public static void main(String[] args) {
String str1 = "你好,我是中国重庆,这个要是进行加密的字符串。";
String enstr1 = encodeStr(str1);
String str2 = decodeStr(enstr1);
System.out.println("原字符串:" + str1 + " 长度:" + str1.length());
System.out.println("encode字符串:" + enstr1 + " 长度:" + enstr1.length());
System.out.println("decode字符串:" + str2 + " 长度:" + str2.length() );
}
}
如果字符串默认没有使用编码,则使用utf-8编码
需要加编码的则使用
public static String encodeStr(String plainText) throws UnsupportedEncodingException{
// byte[] b=plainText.getBytes("gb2312");
byte[] b=plainText.getBytes("utf-8");
Base64 base64=new Base64();
b=base64.encode(b);
String s=new String(b);
return s;
}
在使用是要么throws 要么使用try catch.