Java工具类(11)—Java中将base64编码字符串转为图片
package util; import javax.servlet.http.HttpServletRequest; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.util.Base64; import java.util.UUID; public class ImageUtil { /** * @Description: 将base64编码字符串转换为图片 * @Author: * @CreateTime: * @param file base64编码字符串 * @param path 图片路径-具体到文件 * @return */ public static String generateImage(String file, String path, HttpServletRequest request) { // 解密 try { // 项目绝对路径 String savePath = request.getSession().getServletContext().getRealPath("upload"); // 图片分类路径+图片名+图片后缀 String imgClassPath = path.concat(UUID.randomUUID().toString()).concat(".jpg"); // 解密 Base64.Decoder decoder = Base64.getDecoder(); // 去掉base64前缀 data:image/jpeg;base64, file = file.substring(file.indexOf(",", 1) + 1, file.length()); byte[] b = decoder.decode(file); // 处理数据 for (int i = 0; i < b.length; ++i) { if (b[i] < 0) { b[i] += 256; } } // 保存图片 OutputStream out = new FileOutputStream(savePath.concat(imgClassPath)); out.write(b); out.flush(); out.close(); // 返回图片的相对路径 = 图片分类路径+图片名+图片后缀 return imgClassPath; } catch (IOException e) { return null; } } }
本文介绍了一款Java工具类,用于将Base64编码的字符串转换为图片,并保存到指定路径。该工具通过解码Base64字符串,处理图片数据,并将其写入到文件系统。
9454

被折叠的 条评论
为什么被折叠?



