【response-下载文件步骤】

Java中都通用文件下载(ContentType、文件头、response、out四步骤)

1.设置文件ContentType类型

2.设置文件头

3.通过response获取ServletOutputStream对象(out)

4.写到输出流(out)中

 1 public void fileDownload(HttpServletResponse response){
 2         //获取网站部署路径(通过ServletContext对象),用于确定下载文件位置,从而实现下载
 3         String path = servletContext.getRealPath("/");
 4
 5         //1.设置文件ContentType类型,这样设置,会自动判断下载文件类型
 6         response.setContentType("multipart/form-data");
 7         //2.设置文件头:最后一个参数是设置下载文件名(假如我们叫a.pdf)
 8         response.setHeader("Content-Disposition", "attachment;fileName="+"a.pdf");
 9         ServletOutputStream out;
10         //通过文件路径获得File对象(假如此路径中有一个download.pdf文件)
11         File file = new File(path + "download/" + "download.pdf");
12
13         try {
14             FileInputStream inputStream = new FileInputStream(file);
15
16             //3.通过response获取ServletOutputStream对象(out)
17             out = response.getOutputStream();
18
19             int b = 0;
20             byte[] buffer = new byte[512];
21             while (b != -1){
22                 b = inputStream.read(buffer);
23                 //4.写到输出流(out)中
24                 out.write(buffer,0,b);
25             }
26             inputStream.close();
27             out.close();
28             out.flush();
29
30         } catch (IOException e) {
31             e.printStackTrace();
32         }
33     }  
时间: 2024-08-11 09:44:25

【response-下载文件步骤】的相关文章

Response下载文件

捣鼓了捣鼓了下载文件,虽然具体的响应头的知识和HttpServletResponse.ServletResponse的有些方法了解的还不够详细.... package com.woshi.servlet; import javax.servlet.ServletException; import javax.servlet.ServletOutputStream; import javax.servlet.annotation.WebServlet; import javax.servlet.h

ASP.NET Response 下载文件

private void DownLoad(string fileName, string path) { FileInfo fi = new FileInfo(path); if (fi.Exists) { Response.Clear(); Response.ClearContent(); Response.ClearHeaders(); Response.Buffer = true; Response.AddHeader("Content-Disposition", "

Retrofit2.0使用PC蛋蛋源码搭建姊妹篇——带进度下载文件

Retrofit是PC蛋蛋源码搭建 dsluntan.com 目前最主流的网络框架了,它对网络请求几近完美的封装,大大降低了我们开发者的研发难度,缩短了研发周期.最近项目中遇到了下载视频和图片文件的需求(还有上传视频和图片的需求,请移步这篇博客),我第一反应是用retrofit做呀,so easy!产品接着说,要带下载进度条哦!我一想,retrofit好像并没有给我们提供显示下载进度的接口,哎呀,看来还是得自己个儿整整喽!接下来,我把自己实现Retrofit带进度下载文件的流程分享给大家.在de

javaweb学习总结二十六(response对象的用法二 下载文件)

一:浏览器打开服务器上的文件 1:读取服务器上面的资源,如果在web层,可以直接使用servletContext,如果在非web层 可以使用类加载器读取文件 2:向浏览器写数据,实际上是把数据封装到response对象上,然后服务器发现response中响应 体中有数据绑定,然后写给浏览器 3:设置响应头,控制浏览器的读取或者解析方式 如下:打开服务器上的图片 1 /**在页面上查看图片*/ 2 private void viewImage(HttpServletResponse respons

多种下载文件方式 Response.BinaryWrite(byte[] DocContent);Response.WriteFile(System.IO.FileInfo DownloadFile .FullName);Response.Write(string html2Excel);

通过html给xls赋值,并下载xls文件 一.this.Response.Write(sw.ToString());System.IO.StringWriter sw = new System.IO.StringWriter(); this.Response.Clear();            string strFileName;            strFileName = "报表" + ".xls";            Response.Buff

将一个文件作为下载的形式打开【下载文件】,添加报文头context.Response.AddHeader("Content-disposition", "attachment; filename="

<1> HTMLPage1.htm页 <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> </head> <body> <a href="下载Handler1.ashx">下载</a> </body> </html> 下载Handler1.ashx.cs

使用git下载码云仓库文件步骤总结

从码云下载文件的两种方式(私服时) 1.让私服管理者复制链接,然后你加入私服: 2.生成公钥,让私服管理者添加你的公钥. 在eclipse中找到git,输入自己的登录账号和密码,下载文件到本地仓库,然后再下载好的文件上点击右键,把 工程从本地仓库导入eclipse中. 上传的话,要在工程名上右击,找到team,先更新再提交 原文地址:https://www.cnblogs.com/sitian2050/p/11982048.html

Java下载文件

下面的代码简单的实现了java下载文件的步骤,看代码: protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //获取文件的类名 String Path=this.getClass().getResource("/").getPath()+"JAVA笔记.txt"; //对获取的路径进

asp.net mvc5 下载文件方法

控制器自带的 FileContentResult 可以让我们很方便的返回文件到服务端,减少了很多步骤.用于下载文件的时候,像视频.文本.图片这种浏览器支持的文件,默认就会被浏览器打开.这时候想让它变成下载,还需要设置一下响应头,告诉浏览器如何处理才行. public ActionResult DownLoadFile(String path, string fileName, string contentType) { Response.AddHeader("Content-Dispositio

汽车之家下载文件和图片

# scrapy框架里下载问价和图片 # 判断文件夹和路径是否存在 # 爬虫文件 import scrapy from bmw.items import BmwItem class Bme5Spider(scrapy.Spider): name = 'bme5' allowed_domains = ['car.autohome.com.cn'] start_urls = ['https://car.autohome.com.cn/pic/series/65.html'] def parse(se