前言
最近在项目中,做文件上传下载时遇到了文件名和文件内容乱码,现在主要分享一下解决办法,写了一个文件打包下载工具类。
springboot文件上传和下载完整版本:springboot文件上传和下载(批量/单个)
工具类
public class ZipFilesUtil {
/**
* 创建zip文件
*
* @param files 文件
* @param path 暂存目录
*/
public static void createZipFiles(List<File> files, String path, HttpServletResponse response) {
try {
//List<File> 作为参数传进来,就是把多个文件的路径放到一个list里面
//创建一个临时压缩文件
//临时文件可以放在CDEF盘中,但不建议这么做,因为需要先设置磁盘的访问权限,最好是放在服务器上,方法最后有删除临时文件的步骤
File file = new File(path);
file.deleteOnExit();
file.createNewFile();
response.reset();
//创建文件输出流
FileOutputStream fileOutput = new FileOutputStream(file);
ZipOutputStream zipOutput = new ZipOutputStream(fileOutput);
zipFile(files, zipOutput);
zipOutput.close();
fileOutput.close();
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 根据输入的文件与输出流对文件进行打包
*/
private static void