Java下载文件(流的形式)

 1     @RequestMapping("download")
 2     @ResponseBody
 3     public void download(HttpServletResponse response, Integer userId, String fileUrl) {
 4         try {
 5             File file=new File(fileUrl);
 6             String filename=file.getName();
 7             // 以流的形式下载文件。
 8             InputStream fis = new BufferedInputStream(new FileInputStream(fileUrl));
 9             byte[] buffer = new byte[fis.available()];
10             fis.read(buffer);
11             fis.close();
12             // 清空response
13             response.reset();
14
15             response.setContentType("application/octet-stream;charset=UTF-8");
16             String fileName = new String(filename.getBytes("gb2312"), "iso8859-1");
17             response.setHeader("Content-disposition", "attachment;filename=" + fileName);
18             OutputStream ouputStream = response.getOutputStream();
19             ouputStream.write(buffer);
20             ouputStream.flush();
21             ouputStream.close();
22         } catch (Exception e) {
23             e.printStackTrace();
24             logger.error("文件下载出现异常", e);
25         }
26     }    
时间: 2024-10-13 01:02:21

Java下载文件(流的形式)的相关文章

java下载文件可打包

//定义下载保存的文件名称 StringBuffer zipName = new StringBuffer(11111.zip); //从前台接到一个图片id的数组 String[] images=request.getParameterValues(imgId); System.out.println("imgId============"+imgId); DisplayManager dm=new DisplayManager(); ZipOutputStream zos=null

Java下载文件

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

java FileStream文件流操作

直接上代码,函数使用说明详见Java API文档 import java.io.*; public class StreamDemo { public static void main(String[] args) { File f=new File("F:\\workspace\\JavaPrj\\test.txt"); FileOutputStream out=null; try { out=new FileOutputStream(f); byte[] b=new String(

js 下载文件流

这个问题,先描述下最初的思路: 1.从接口中获取到文件流: 2.在浏览器中下载文件流: 按照上述问题在网上找答案,DOM File API,XMLHTTP,asp方法好多. 最后用最简单的方法window.location.href = apiUrl;直接实现了. 现在想想,就是一步下载,分开走就麻烦了.

阿里云附件文件流的形式上传、下载

1.View附件上传 @using (Html.BeginForm("StartUpLoad", "ReferenceDocument", new {id = ViewBag.Id}, FormMethod.Post, new {enctype = "multipart/form-data"})) { <input type="file" name="filedata" id="fileUp

Java总结——文件&amp;流

最近学习了Java的输入输出,脑子里有两点乱,不过比之前的思路好像清晰了很多.脑子刚刚接收这些信息的时候,整个就是懵逼的,又是文件又是流的,文件到底干嘛的,流到底干嘛的?恩,后来,想了想,其实也不难理解嘛.Java里的输入输出其实就像脑袋接收信息.文件就像大脑,是存储接收到的信息的地方:流就是类似声波的东西,耳朵接收到,但是却未必要用大脑(你说的很对,可我就是不听.) 1. File是什么,RandomAccessFile是什么,又是何时使用呢? 1)   首先要说明一下File类的作用,Fil

Java 下载文件

public @ResponseBody void exportExcel(HttpServletRequest request, HttpServletResponse response, KhxxCxVO vo) throws IOException{ File csvFile = createCSVFile(request,vo);//获取要下载的文件 BufferedInputStream bis = null; BufferedOutputStream bos = null; resp

【文件下载】Java下载文件的几种方式

1.以流的方式下载. public HttpServletResponse download(String path, HttpServletResponse response) { try { // path是指欲下载的文件的路径. File file = new File(path); // 取得文件名. String filename = file.getName(); // 取得文件的后缀名. String ext = filename.substring(filename.lastIn

java下载文件指定目录下的文件

方法一: @RequestMapping('download')def download(HttpServletRequest request, HttpServletResponse response) { TtxSession session = getSession(request) String fileName='OrderData--20190225.csv' String pathName="C:\\export\\OrderData--20190225.csv" dow