有一些文件保存在项目中需要在浏览器打开的页面中下载,需要找准文件的存储路径
- 工程格式
2.代码
public String execute() throws Exception {
HttpServletResponse response = ServletActionContext.getResponse();
// 下载本地文件
String fileName = new String("例行检查报告模板.docx"); // 文件的默认保存名
InputStream inStream =ServletActionContext.getServletContext().getResourceAsStream("WEB-INF/例行检查报告模板.doc");
// 读到流中
// InputStream inStream =this.getClass().getResourceAsStream("/WEB-INF/例行检查报告模板.docx"); // 文件的存放路径
// 设置输出的格式
response.setContentType("application/octet-stream");
response.setCharacterEncoding("utf-8");
response.addHeader("Content-Disposition", "attachment; filename=" + URLEncoder.encode(fileName, "utf-8"));
// 循环取出流中的数据
byte[] b = new byte[100];
int len;
try {
while ((len = inStream.read(b)) > 0) {
response.getOutputStream().write(b, 0, len);
}
inStream.close();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}