package com.topnet.utils;
import sun.misc.BASE64Decoder;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
public class Base64Utils {
/**
* base64字符串转换成图片
* imgStr base64字符串
* path 生成图片路径
* photoName 图片名称
*/
public static boolean GenerateImage(String imgStr, String path,String photoName) {
BASE64Decoder decoder = new BASE64Decoder();
try {
String baseValue = imgStr.replaceAll(" ", "+");
byte[] b = decoder.decodeBuffer(baseValue.replace("data:image/jpeg;base64,", ""));
for (int i = 0; i < b.length; ++i) {
if (b[i] < 0) {
b[i] += 256;
}
}
File targetFile = new File(path);
if(!targetFile.exists()){
targetFile.mkdirs();
}
OutputStream out = new FileOutputStream(path+"/"+photoName);
out.write(b);
out.flush();
out.close();
return true;
} catch (Exception e) {
return false;
}
}
}
此方法可以保存pdf、jpg、、、等,但base64文件流是对应的pdf、jpg、、、文件流。