jsp+servlet文件下载 你的名字 2022-06-07 04:11 215阅读 0赞 **要下载的文件a.zip位于file目录下:** ![Center][] **方式一:** 1、DownServlet package cn.sz.servlet; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.net.URLEncoder; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class DownServlet extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String fileName = request.getParameter("filename"); //获取要下载的文件所在目录的路径 String dirPath = getServletContext().getRealPath("/file"); File dirFile = new File(dirPath); //获取要下载的文件 File file = new File(dirFile, fileName); if (!file.exists()) { response.getWriter().println("文件" + fileName + "不存在"); return; } String encode = URLEncoder.encode(fileName, "UTF-8");;//解决中文名称乱码问题 //重要参数:设置响应头,控制浏览器下载该文件 response.setHeader("content-disposition", "attachment;filename=" + encode);//浏览器保存的文件名 //读取要下载的文件,保存到文件输入流 FileInputStream fis = new FileInputStream(file); //创建输出流 ServletOutputStream out = response.getOutputStream(); //创建缓冲区 byte[] buffer = new byte[1024]; int len; while ((len = fis.read(buffer)) > 0) { out.write(buffer, 0, len); } //关闭文件输入流 fis.close(); //关闭输出流 out.close(); } } 2、web.xml <servlet> <servlet-name>DownServlet</servlet-name> <servlet-class>cn.sz.hcq.servlet.DownServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>DownServlet</servlet-name> <url-pattern>/DownServlet</url-pattern> </servlet-mapping> 3、down.jsp <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title></title> </head> <body> <h1>文件下载</h1> <form action="DownServlet" method="get"> <!-- 要下载的文件(a.txt) --> <input type="hidden" name="filename" value="a.txt"> <button>点击下载</button> </form> </body> </html> 结果截图: ![Center 1][] **方式二:** 直接在浏览器请求或作为超链接或使用JS的location对象请求 直接请求文件的路径:http://localhost:8080/Upload/file/a.zip [Center]: /images/20220607/7d92efb6aa54455586369d8fe31d878a.png [Center 1]: /images/20220607/a722a44512c544ff9ad5af041aba838c.png
相关 详解DefaultServlet与JspServlet -------------------- 版权声明 本文原创作者:谷哥的小弟 作者博客地址:http://blog.csdn.net/lfdfhl --- 妖狐艹你老母/ 2022年10月06日 15:56/ 0 赞/ 258 阅读
相关 文件下载 String filePath = wenjianService.getlujing(attachId); String fileName= wenjian 川长思鸟来/ 2022年08月23日 00:52/ 0 赞/ 34 阅读
相关 文件下载 下载图片或者文件有那么几种方法,下面详细总结。 1,js方法 function downloadFile(url){ var elemIF Bertha 。/ 2022年08月06日 15:29/ 0 赞/ 137 阅读
相关 文件下载 对应文件上传的下载 1、javaweb方法实现: public String download(){ try { //获取文件ID ゝ一世哀愁。/ 2022年07月13日 14:08/ 0 赞/ 240 阅读
相关 下载文件 //设置文件MIME类型 response.setContentType(getServletContext().getMimeType(f 浅浅的花香味﹌/ 2022年06月17日 05:44/ 0 赞/ 219 阅读
相关 文件下载 下载就是向客户端响应字节数据,原来响应的都是html的字符数据,现在 把一个文件变成字节数组,使用response.getOutputStream()来各应给浏览器! 下载 - 日理万妓/ 2022年06月10日 03:10/ 0 赞/ 164 阅读
相关 文件下载 html 标签 点击自动下载 <button> <a href = "http://localhost/day.zip"> 布满荆棘的人生/ 2022年03月18日 13:56/ 0 赞/ 540 阅读
相关 下载文件 import javax.servlet.http.HttpServletResponse; import java.io.BufferedOutputStre 骑猪看日落/ 2022年01月11日 02:57/ 0 赞/ 298 阅读
相关 文件下载 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ub 川长思鸟来/ 2021年12月15日 00:53/ 0 赞/ 361 阅读
还没有评论,来说两句吧...