首页 > 其他 > 详细

文件下载

时间:2016-03-28 18:32:47      阅读:165      评论:0      收藏:0      [点我收藏+]

之前一直接触文件上传,以为文件下载是什么东西。仔细看了下,才发现其本质就是文件的复制。

 

下载的关键代码:

private void download(HttpServletRequest request,HttpServletResponse response) throws IOException { 
     
        File f = new File("c:\\095557357.jpg"); 

        response.reset(); 
        response.setContentType("image/jpeg");//设置下载文件的类型 
        response.setHeader("content-disposition","attachment; filename=text.jpg"); //设置下载的文件名 

        long fileLength=f.length(); 
        String length1=String.valueOf(fileLength); 
        response.setHeader("Content_Length",length1); //下载文件的大小 

        InputStream in = new FileInputStream( f ); 
        OutputStream out = response.getOutputStream(); 
        byte[] buffer = new byte[2097152]; 
         
        int ins = in.read(buffer);//读取字节到buffer中 
         
        //ins == -1 时 。就已经是文件的结尾了 
        while ( ins != -1 ) {     
            out.write(buffer, 0, ins);//将缓存buffer中的数据写到文件中 
            ins = in.read(buffer); 
        } 
        in.close(); 
        out.flush(); 
        out.close(); 
    }

这是一个servlet,复制文件的代码。

response.setContentType("image/jpeg");

是比较重要的,标明本次下载的是一张图片。

文件下载

原文:http://www.cnblogs.com/aigeileshei/p/5330018.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!