base64在java里重新转成图片,结果图片打不开
一个java项目,前端将图片转成base64的字符串,后端拿到字符串重新转换为图片并保存到本地,但是保存到本地的图片打开时却出现错误,以下是实现代码,代码中的base64字符串,是直接从网上的在线将图片转为base64转换的,可以使用任意图片
import java.io.FileOutputStream;
import java.io.OutputStream;
import sun.misc.BASE64Decoder;
public class Base64ToImg {
public static void base64ToFile(String base64)throws Exception{
BASE64Decoder decoder = new sun.misc.BASE64Decoder();
byte[] bytes1 = decoder.decodeBuffer(base64);
OutputStream out=new FileOutputStream("E://a.jpg");
out.write(bytes1);
out.flush();
out.close();
}
public static void main(String[] args) {
try {
//此处放base64字符串
String base64="";
base64ToFile(base64);
} catch (Exception e) {
e.printStackTrace();
}
}
}
结果如图: