我有一个String longblobimage,取自mysql数据库,如何将其转换为base64字符串,我怎么知道它是否已经是编码图像?
这是我的尝试:
public String checkForEncode(String string) {
String regex = "^([A-Za-z0-9+/]{4})*([A-Za-z0-9+/]{4}|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{2}==)$";
if(string.matches(regex)){
System.out.println("ERROR33:it's a Base64");
return string;
}
String encodedImage = Base64.encodeToString(string.getBytes(), Base64.DEFAULT);
return encodedImage;
}
到目前为止,由于某种原因,这对我不起作用
答案 0 :(得分:0)
您要导入哪些内容才能访问
Base64.encodeToString(string.getBytes(),Base64.DEFAULT)
我正在试图弄清楚它是如何工作的,但Base64甚至没有记录采用编码类型的静态方法。
您可以将字符串转换为base64 byteArray,这可能是您将图像存储到文件中的方式。
Java中的String是UTF-16编码的,因此将Base64编码的byteArray存储回String中没有意义,因为这会再次改变编码。
byte [] encoded = Base64.encodeBase64(string.getBytes());