/**
* BufferedImage 編碼轉換爲 base64
* @param bufferedImage
* @return
*/
private static String BufferedImageToBase64(BufferedImage bufferedImage) {
ByteArrayOutputStream baos = new ByteArrayOutputStream();//io流
try {
ImageIO.write(bufferedImage, "png", 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
System.out.println("值爲:" + "data:image/jpg;base64," + png_base64);
return "data:image/jpg;base64," + png_base64;
}
/**
* base64 編碼轉換爲 BufferedImage
* @param base64
* @return
*/
private static BufferedImage base64ToBufferedImage(String base64) {
BASE64Decoder decoder = new sun.misc.BASE64Decoder();
try {
byte[] bytes1 = decoder.decodeBuffer(base64);
ByteArrayInputStream bais = new ByteArrayInputStream(bytes1);
return ImageIO.read(bais);
} catch (IOException e) {
e.printStackTrace();
}
return null;
}