使用 apache 对 字符串进行base64编码解码的实例:
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import org.apache.commons.codec.binary.Base64;
/**
* 使用 apache 对 字符串进行base64编码解码
*/
public class Base64EncodedUtil {
private static final String CharsetName = "UTF-8";
/**
* 将字符串编码为BASE64字符串
* @param str
* @return
*/
public static String encode(String str) {
String base64Str = null;
try{
base64Str = encode(str.getBytes(CharsetName));
}catch(UnsupportedEncodingException e){
e.printStackTrace();
}
return base64Str;
}
/**
* 将二进制数据编码为BASE64字符串
* @param str
* @return
* @throws UnsupportedEncodingException
*/
public static String encode(byte[] binaryData) {
String base64Str;
try{
base64Str = new String(Base64.encodeBase64(binaryData),CharsetName);
}catch(UnsupportedEncodingException e){
e.printStackTrace();
return null;
}
return base64Str;
/**
* 对base64字符串解码
* @param base64Str
* @return
* @throws IOException
*/
public static String decode(String base64Str) {
String str = base64Str;
try{
byte[] bt = Base64.decodeBase64(base64Str.getBytes(CharsetName));
str = new String(bt,CharsetName);
}catch(UnsupportedEncodingException e){
throw new IllegalStateException("数据解密错误"+e.getMessage(),e);
}
return str;
}
}