import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
// 将 str进行 BASE64 编码
public static String getBASE64(String str) {
if (str == null)
return null;
return (new sun.misc.BASE64Encoder()).encode(str.getBytes());
}
// 将 BASE64 编码的字符串 str进行解码
public static String getFromBASE64(String str) {
if (str == null)
return null;
BASE64Decoder decoder = new BASE64Decoder();
try {
byte[] b = decoder.decodeBuffer(str);
return new String(b);
} catch (Exception e) {
return null;
}
}
Base-64编码可以将任意一组字节转换为较长的常见文本字符序列,从而可以合法地作为首部字段值。Base-64编码将用户输入或二进制数据,打包成一种安全格式,将其作为HTTP首部字段的值发送出去,而无须担心其中包含会破坏HTTP分析程序的冒号、换行符或二进制值。Base-64编码是作为MIME多媒体电子邮件标准的一部分开发的,这样MIME就可以在不同的合法电子邮件网关之间传输富文本和任意的二进制数据里。Base-64编码与将二进制数据文本化表示的uuencode和BinHex标准在本质上类似,但空间效率更高。