parent
0350401e76
commit
38b3bbee1f
@ -0,0 +1,56 @@
|
|||||||
|
package com.dsideal.FengHuang.Util;
|
||||||
|
|
||||||
|
import org.apache.commons.codec.binary.Base64;
|
||||||
|
import sun.misc.BASE64Encoder;
|
||||||
|
|
||||||
|
import javax.imageio.ImageIO;
|
||||||
|
import java.awt.image.BufferedImage;
|
||||||
|
import java.io.ByteArrayOutputStream;
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
|
||||||
|
public class Base64Util {
|
||||||
|
public static String imageToBase64(BufferedImage bufferedImage) {
|
||||||
|
ByteArrayOutputStream baos = new ByteArrayOutputStream();//io流
|
||||||
|
try {
|
||||||
|
ImageIO.write(bufferedImage, "jpg", baos);//写入流中
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
byte[] bytes = baos.toByteArray();//转换成字节
|
||||||
|
BASE64Encoder encoder = new BASE64Encoder();
|
||||||
|
String png_base64 = encoder.encodeBuffer(bytes).trim();//转换成base64串
|
||||||
|
png_base64 = png_base64.replaceAll("\n", "").replaceAll("\r", "");//删除 \r\n
|
||||||
|
return "data:image/jpg;base64," + png_base64;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 文件File类型转BASE64
|
||||||
|
*
|
||||||
|
* @param file
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public static String fileToBase64(File file) {
|
||||||
|
return "data:image/png;base64," + Base64.encodeBase64String(fileToByte(file));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 文件File类型转byte[]
|
||||||
|
*
|
||||||
|
* @param file
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private static byte[] fileToByte(File file) {
|
||||||
|
byte[] fileBytes = null;
|
||||||
|
FileInputStream fis = null;
|
||||||
|
try {
|
||||||
|
fis = new FileInputStream(file);
|
||||||
|
fileBytes = new byte[(int) file.length()];
|
||||||
|
fis.read(fileBytes);
|
||||||
|
fis.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return fileBytes;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in new issue