根据模板下载文件到浏览器
package com.file;
import org.springframework.util.Assert;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.OutputStream;
import java.nio.file.Files;
/**
* 根据模板下载文件工具类
*/
public class FileDownUtil {
/**
* 根据路径下载文件浏览器
*
* @param path
* @param response
* @throws Exception
*/
public static void download(String path, HttpServletResponse response) throws Exception {
// 发送给客户端的数据
download(new File(path), response);
}
/**
* 根据文件下载到浏览器
*
* @param file
* @param response
* @throws Exception
*/
public static void download(File file, HttpServletResponse response) throws Exception {
Assert.isTrue(!file.exists(), "文件路径不存在");
// 发送给客户端的数据
OutputStream outputStream = response.getOutputStream();
byte[] buff = new byte[1024];
// 读取filename
BufferedInputStream bis = new BufferedInputStream(Files.newInputStream(file.toPath()));
int read = bis.read(buff);
while (read != -1) {
outputStream.write(buff, 0, buff.length);
outputStream.flush();
read = bis.read(buff);
}
bis.close();
outputStream.close();
}
}