hutool工具类base64位编码转图片
时间: 2024-09-10 09:14:24 浏览: 93
图片与Base64互相转换的工具类
Hutool是一个非常实用的Java工具包,它包含了许多方便的功能,包括处理字符串、文件操作、日期等。对于Base64编码转换成图片,Hutool提供了一个叫做`AutoUtil`的模块,其中有一个`ImageUtil`类可以方便地完成这个任务。
你可以使用`ImageUtil.decodeBase64ToBytes(String base64Str)`方法将Base64编码的字符串转换为字节数组,然后使用`ImageIO.write(byte[] bytes, String format, OutputStream out)`方法将字节数组写入到输出流(如FileOutputStream或者MemoryOutputstream),最后保存为图片。例如:
```java
import cn.hutool.core.io.IoUtil;
import java.awt.image.BufferedImage;
import java.io.ByteArrayOutputStream;
import java.io.File;
import javax.imageio.ImageIO;
String base64Str = "your_base64_string";
byte[] decodedBytes = ImageUtil.decodeBase64ToBytes(base64Str);
// 创建临时文件存储图片
File tempFile = File.createTempFile("decoded_", ".jpg");
try (ByteArrayOutputStream bos = new ByteArrayOutputStream();
BufferedImage image = ImageIO.read(new ByteArrayInputStream(decodedBytes))) {
ImageIO.write(image, "jpg", bos);
// 将字节数组写入临时文件
IoUtil.copy(bos.toByteArray(), tempFile);
} catch (Exception e) {
e.printStackTrace();
}
```
这样就实现了Base64字符串到图片的转换,并保存到了临时文件中。
阅读全文