package net.sc.common.util;
import java.io.UnsupportedEncodingException;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class Base64 {
// 加密
public static synchronized String getBase64(String str) {
byte[] b = null;
String s = null;
try {
b = str.getBytes("utf-8");
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
if (b != null) {
s = new BASE64Encoder().encode(b);
}
return s;
}
// 加密
public static synchronized String getBase64(byte[] data) {
String s = null;
if (data != null) {
s = new BASE64Encoder().encode(data);
}
return s;
}
// 解密
public static synchronized String getFromBase64(String s) {
byte[] b = null;
String result = null;
if (s != null) {
BASE64Decoder decoder = new BASE64Decoder();
try {
b = decoder.decodeBuffer(s);
result = new String(b, "utf-8");
} catch (Exception e) {
e.printStackTrace();
}
}
return result;
}
public static synchronized byte[] getFromBase64Bytes(String s) {
BASE64Decoder decoder = new BASE64Decoder();
try {
return decoder.decodeBuffer(s);
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static void main(String args[]) {
Base64 base = new Base64();
String text = "abc另中国!@!#sadf;";
String bt = base.getBase64(text);
System.out.println(bt);
System.out.println(base.getFromBase64(bt));
}
}