package com.sandu.ximon.admin.utils;
|
|
import org.apache.commons.codec.binary.Base64;
|
|
public class Base64Util {
|
|
/**
|
* 将二进制数据编码为BASE64字符串
|
* @param binaryData
|
* @return
|
*/
|
public static String encode(byte[] binaryData) {
|
try {
|
return new String(Base64.encodeBase64(binaryData));
|
} catch (Exception e) {
|
return null;
|
}
|
}
|
|
/**
|
* 将BASE64字符串恢复为二进制数据
|
* @param base64String
|
* @return
|
*/
|
public static byte[] decode(String base64String) {
|
try {
|
return Base64.decodeBase64(base64String.getBytes());
|
} catch (Exception e) {
|
return null;
|
}
|
}
|
|
public static void main(String[] args) {
|
byte[] bytes = "/qUBAAv+AQAD//8yjUBF9xgeI0U=".getBytes();
|
byte[] bytes1 = Base64.decodeBase64(bytes);
|
System.out.println(HexStrConvertUtil.bytesToHexString(bytes1));
|
}
|
|
|
public static String toBase64Frame (String hexStr) {
|
// BigInteger bigInteger = new BigInteger(hexStr, 16); // 此方式会产生头部多出空的一字节
|
// byte[] bytes = bigInteger.toByteArray();
|
// System.out.println("origin:"+hexStr);
|
byte[] bytes = HexStrConvertUtil.hexStringToBytes(hexStr);
|
String base64 = encode(bytes);
|
return base64;
|
}
|
}
|