下载resources目录下文件
目录结构
代码
public void downLoadTemplate(String type, HttpServletResponse response, HttpServletRequest request) {
String fileName = "";
InputStream in = null;
if (type.equals("1")) {
fileName = "终端内置信息导入模板.xls";
in = this.getClass().getClassLoader().getResourceAsStream("template/" + fileName);
} else if (type.equals("2")) {
fileName = "终端实时数据导入模板.xls";
in = this.getClass().getClassLoader().getResourceAsStream("template/" + "fileName");
}
getFileContent(in, fileName, response, request);
}
public void getFileContent(InputStream inputStream, String name, HttpServletResponse response, HttpServletRequest request) {
response.reset();
try {
InputStream in = inputStream;
response.setHeader("Content-Length", String.valueOf(in.available()));
byte[] buffer = new byte[in.available()];
in.read(buffer);
in.close();
String userAgent = request.getHeader("User-Agent");
String fileName;
if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
fileName = URLEncoder.encode(name, "UTF-8");
} else {
fileName = new String(name.getBytes("UTF-8"), "ISO-8859-1");
}
response.addHeader("Content-Disposition", "attachment;filename=" + fileName);
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}