菜鸟笔记
提升您的技术认知

java中将base64编码字符串转换为图片-ag真人游戏

前一段时间,在做摄像头拍照上传,摄像头拍的照片为base64编码格式的字符串,需要上传至项目中,则需要使用到将base64编码字符串转换为图片

1、将base64编码字符串转换为图片的代码如下 imageutil.java:

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;
		}
	}
}

如您在阅读中发现不足,欢迎留言!!!

网站地图