response:文件下载案例


public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String path = this.getServletContext()
.getRealPath("/download/logo.png");
String filename = path.substring(path.lastIndexOf("\") + 1);
//如果下载文件名称是中文,文件名需要url编码
response.setHeader("content-disposition", "attachement;filename="+ URLEncoder.encode(filename,"UTF-8"));
InputStream in = null;
OutputStream out = null;
try {
in = new FileInputStream(path);
int len = 0;
byte buffer[] = new byte[1024];
out = response.getOutputStream();
while ((len = in.read(buffer)) > 0) {
out.write(buffer, 0, len);
}
} finally {
if (in != null) {
try {
in.close();
} catch (Exception e) {
e.printStackTrace();
}

}
}
}

原文地址:https://www.cnblogs.com/danyuzhu11/p/6561722.html