图片是每一个Java程序员都要面对的,不管审核还是,什么?
下面就有我带大家看看开发中经常解决的图片怎么解决的,希望可以给你带了帮助
1将图片搞成base64位进行解决
@SpringBootTest
class SpringqqApplicationTests {
@Test
void contextLoads() {
String path="D:\\.temp\\dd\\1.png";
String path1="D:\\.temp\\dd\\img\\";
String newName ="2.jpeg";
//生成图片的路径
String pImagesPath = path1 + newName;
String getImageStr = SpringqqApplicationTests.GetImageStr(path);
System.out.println(getImageStr);
String ff="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\n";
boolean b = SpringqqApplicationTests.GenerateImage(ff, pImagesPath);
System.out.println("是不是成功"+b);
}
public static String GetImageStr(String imgFilePath) {
byte[] data = null;
// 读取图片字节数组
try {
InputStream in = new FileInputStream(imgFilePath);
data = new byte[in.available()];
in.read(data);
in.close();
} catch (IOException e) {
e.printStackTrace();
}
// 对字节数组Base64编码
BASE64Encoder encoder = new BASE64Encoder();
return encoder.encode(data);// 返回Base64编码过的字节数组字符串
}
public static boolean GenerateImage(String imgStr, String imgFilePath) {
if (imgStr == null) // 图像数据为空
return false;
BASE64Decoder decoder = new BASE64Decoder();
try {
// Base64解码
byte[] bytes = decoder.decodeBuffer(imgStr);
for (int i = 0; i < bytes.length; ++i) {
if (bytes[i] < 0) {// 调整异常数据
bytes[i] += 256;
}
}
// 生成jpeg图片
OutputStream out = new FileOutputStream(imgFilePath);
out.write(bytes);
out.flush();
out.close();
return true;
} catch (Exception e) {
return false;
}
}
}
文档上传的时候进行
//file为MultipartFile
BASE64Encoder base64Encoder =new BASE64Encoder();
String base64EncoderImg = base64Encoder.encode(file.getBytes());
保存在数据库,面临字符串长度比较长保存不了,
解决方案
https://mp.weixin.qq.com/s?__biz=MzA4MTAwMzA1Mw==&mid=2247484560&idx=1&sn=24176169069bbb4933b7a6da57645a6b&chksm=9f9ad3d2a8ed5ac446e5ab2da149c3ef6fd2300c6057e78eb6ff6a9fe2e06f747808e5f4b2dd&token=1356251448&lang=zh_CN#rd
有人问要图片比较大搞成不了字符串怎么搞
按照比例进行缩放
long srcFileSize = srcFile.length();
System.out.println("源图片:" + srcPath + ",大小:" + srcFileSize / 1024
+ "kb");
// 1、先转换成jpg
Thumbnails.of(srcPath).scale(1f).toFile(desPath);
//按照比例进行缩放
imgScale(desPath, desFileSize, accuracy);
File desFile = new File(desPath);
System.out.println("目标图片:" + desPath + ",大小" + desFile.length()
/ 1024 + "kb");
System.out.println("图片压缩完成!");
} catch (Exception e) {
e.printStackTrace();
return null;
}
return desPath;
}
/**
* 按照比例进行缩放
*
*/
private static void imgScale(String desPath, long desFileSize,
double accuracy) throws IOException{
File file=new File(desPath);
long fileSize=file.length();
//判断大小,如果小于指定大小,不压缩;如果大于等于指定大小,压缩
if(fileSize<=desFileSize*1024){
return;
}
//按照比例进行缩小
Thumbnails.of(desPath).scale(accuracy).toFile(desPath);//按比例缩小
System.out.println("按照比例进行缩放");
imgScale(desPath, desFileSize, accuracy);
}
}
指定大小进行缩放
public class PicUtil {
public static void main(String[] args) {
PicUtil.commpressPicForSize("G:\\images\\ceshi.jpg",
"G:\\images\\datas\\ceshi.jpg", 100, 0.3); // 图片小于100kb
}
/**
* 根据指定大小和指定精度压缩图片
*
* @param srcPath
* 源图片地址
* @param desPath
* 目标图片地址
* @param desFilesize
* 指定图片大小,单位kb
* @param accuracy
* 精度,递归压缩的比率,建议小于0.9
* @return
*/
public static String commpressPicForSize(String srcPath, String desPath,
long desFileSize, double accuracy) {
if (StringUtils.isEmpty(srcPath) || StringUtils.isEmpty(srcPath)) {
return null;
}
if (!new File(srcPath).exists()) {
return null;
}
try {
File srcFile = new File(srcPath);
long srcFileSize = srcFile.length();
System.out.println("源图片:" + srcPath + ",大小:" + srcFileSize / 1024
+ "kb");
// 1、先转换成jpg
Thumbnails.of(srcPath).scale(1f).toFile(desPath);
// 递归压缩,直到目标文件大小小于desFileSize
commpressPicCycle(desPath, desFileSize, accuracy);
File desFile = new File(desPath);
System.out.println("目标图片:" + desPath + ",大小" + desFile.length()
/ 1024 + "kb");
System.out.println("图片压缩完成!");
} catch (Exception e) {
e.printStackTrace();
return null;
}
return desPath;
}
/**
* 图片压缩:按指定大小把图片进行缩放(会遵循原图高宽比例)
* 并设置图片文件大小
*/
private static void commpressPicCycle(String desPath, long desFileSize,
double accuracy) throws IOException {
File srcFileJPG = new File(desPath);
long srcFileSizeJPG = srcFileJPG.length();
// 2、判断大小,如果小于指定大小,不压缩;如果大于等于指定大小,压缩
if (srcFileSizeJPG <= desFileSize * 1024) {
return;
}
// 计算宽高
BufferedImage bim = ImageIO.read(srcFileJPG);
int srcWdith = bim.getWidth();
int srcHeigth = bim.getHeight();
int desWidth = new BigDecimal(srcWdith).multiply(
new BigDecimal(accuracy)).intValue();
int desHeight = new BigDecimal(srcHeigth).multiply(
new BigDecimal(accuracy)).intValue();
Thumbnails.of(desPath).size(desWidth, desHeight)
.outputQuality(accuracy).toFile(desPath);
commpressPicCycle(desPath, desFileSize, accuracy);
}
}
/**
* 上传文件工类
*/
public class FileUploadUtils {
/**
* 单个上传文件
*
* @param multipartFile 文件
* @param filePath 储存文件路径
* @param formatFileNameFlag 是否需要格式化文件名称
* @return
* @throws IOException
*/
public static String upload(MultipartFile multipartFile, String filePath, boolean formatFileNameFlag) throws IOException {
if (multipartFile == null) {
throw new RRException("请选择上传文件");
}
String fileName = multipartFile.getOriginalFilename();
if (StrUtil.isBlank(fileName)) {
throw new RRException("文件名为空");
}
File file = new File(filePath);
// 文件夹不存在就创建
if (!file.exists()) {
FileUtil.mkdir(file);
}
if (formatFileNameFlag) {
fileName = formatFileName(fileName);
}
// 上传文件
File uploadFile = new File(file, fileName);
multipartFile.transferTo(uploadFile);
return fileName;
}
/**
* 批量上传文件
*
* @param multipartFiles 文件列表
* @param filePath 储存文件路径
* @param formatFileNameFlag 是否需要格式化文件名称
* @return
* @throws IOException
*/
public static String[] upload(MultipartFile[] multipartFiles, String filePath, boolean formatFileNameFlag) throws IOException {
if (null == multipartFiles || 0 == multipartFiles.length) {
throw new RRException("请选择上传文件");
}
// 返回值
String[] strings = new String[multipartFiles.length];
int i = 0;
// 循环批量上传
for (MultipartFile multipartFile : multipartFiles) {
//先查询出重复的 进行删除 再插入图片
String upload = upload(multipartFile, filePath, formatFileNameFlag);
strings[i++] = upload;
}
return strings;
}
/**
* 格式化文件名
*
* @param fileName 文件名称
* @return
*/
private static String formatFileName(String fileName) {
// 后缀名
String suffix = fileName.split("\\.")[1];
// 随机数
final double d = Math.random();
final int i = (int) (d * 1000);
// 拼接返回文件名
return DatePattern.PURE_DATETIME_MS_FORMAT.format(new Date()) + "" + i + "." + suffix;
}
/**
* 文件删除
*
* @param filePath 文件路径
* @return false、true
*/
public static void delete(String filePath) {
if (FileUtil.isFile(filePath)) {
FileUtil.del(filePath);
}else {
throw new RRException("删除的文件为空");
}
}
/**
* 删除文件夹下所有文件
* @param path 文件夹的路径
* @return
*/
public static void deleteFile(String path) {
// get file list where the path has
File file = new File(path);
// get the folder list
File[] array = file.listFiles();
for (int i = 0; i < array.length; i++) {
if (array[i].isFile()) {
delete(array[i].getPath());
}
}
}
}
使用这个工具类就可以解决百分的问题