public class FileServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
//获取文件下载路径
String realPath = "D:\\workspace\\servlet\\reponse\\src\\main\\resources\\风景.png";
System.out.println("下载文件的路径"+realPath);
//获取文件名
String fileName = realPath.substring(realPath.lastIndexOf("\\")+1);
System.out.println("文件名:"+fileName);
//让浏览器支持我们下载
resp.setHeader("Content-Disposition","attachment;filename="+URLEncoder.encode(fileName,"UTF-8"));
//获取下载文件的输入流
FileInputStream in = new FileInputStream(realPath);
//创建缓冲区
int len = 0;
byte[] buffer = new byte[1024];
//获取OutputStream对象
ServletOutputStream out = resp.getOutputStream();
//将FileOutputStream流写入buffer缓冲区,使用OutputStream将缓冲区数据输出到客户端
while ((len = in.read(buffer)) > 0){
out.write(buffer,0,len);
}
//关闭流
in.close();
out.close();
}
JavaWeb - 下载文件
猜你喜欢
转载自blog.csdn.net/qq_41694490/article/details/113830947
今日推荐
周排行