`
jellcy
  • 浏览: 4267 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

java 下载

    博客分类:
  • java
阅读更多
Java文件下载的几种方式
< type="text/javascript"> document.body.oncopy = function() { if (window.clipboardData) { setTimeout(function() { var text = clipboardData.getData("text"); if (text && text.length > 300) { text = text + "\r\n\n本文来自CSDN博客,转载请标明出处:" + location.href; clipboardData.setData("text", text); } }, 100); } }

     public  HttpServletResponse download(String path, HttpServletResponse response) {
         try  {
             //  path是指欲下载的文件的路径。
            File file  =   new  File(path);
             //  取得文件名。
            String filename  =  file.getName();
             //  取得文件的后缀名。
            String ext  =  filename.substring(filename.lastIndexOf( " . " )  +   1 ).toUpperCase();

             //  以流的形式下载文件。
            InputStream fis  =   new  BufferedInputStream( new  FileInputStream(path));
             byte [] buffer  =   new   byte [fis.available()];
            fis.read(buffer);
            fis.close();
             //  清空response
            response.reset();
             //  设置response的Header
            response.addHeader( " Content-Disposition " ,  " attachment;filename= "   +   new  String(filename.getBytes()));
            response.addHeader( " Content-Length " ,  ""   +  file.length());
            OutputStream toClient  =   new  BufferedOutputStream(response.getOutputStream());
            response.setContentType( " application/octet-stream " );
            toClient.write(buffer);
            toClient.flush();
            toClient.close();
        }  catch  (IOException ex) {
            ex.printStackTrace();
        }
         return  response;
    }

     public   void  downloadLocal(HttpServletResponse response)  throws  FileNotFoundException {
         //  下载本地文件
        String fileName  =   " Operator.doc " .toString();  //  文件的默认保存名
         //  读到流中
        InputStream inStream  =   new  FileInputStream( " c:/Operator.doc " ); //  文件的存放路径
         //  设置输出的格式
        response.reset();
        response.setContentType( " bin " );
        response.addHeader( " Content-Disposition " ,  " attachment; filename=\ ""  + fileName +  " \ "" );
         //  循环取出流中的数据
         byte [] b  =   new   byte [ 100 ];
         int  len;
         try  {
             while  ((len  =  inStream.read(b))  >   0 )
                response.getOutputStream().write(b,  0 , len);
            inStream.close();
        }  catch  (IOException e) {
            e.printStackTrace();
        }
    }

     public   void  downloadNet(HttpServletResponse response)  throws  MalformedURLException {
         //  下载网络文件
         int  bytesum  =   0 ;
         int  byteread  =   0 ;

        URL url  =   new  URL( " windine.blogdriver.com/logo.gif " );

         try  {
            URLConnection conn  =  url.openConnection();
            InputStream inStream  =  conn.getInputStream();
            FileOutputStream fs  =   new  FileOutputStream( " c:/abc.gif " );

             byte [] buffer  =   new   byte [ 1204 ];
             int  length;
             while  ((byteread  =  inStream.read(buffer))  !=   - 1 ) {
                bytesum  +=  byteread;
                System.out.println(bytesum);
                fs.write(buffer,  0 , byteread);
            }
        }  catch  (FileNotFoundException e) {
            e.printStackTrace();
        }  catch  (IOException e) {
            e.printStackTrace();
        }
    }

//支持在线打开文件的一种方式
     public   void  downLoad(String filePath, HttpServletResponse response,  boolean  isOnLine)  throws  Exception {
        File f  =   new  File(filePath);
         if  ( ! f.exists()) {
            response.sendError( 404 ,  " File not found! " );
             return ;
        }
        BufferedInputStream br  =   new  BufferedInputStream( new  FileInputStream(f));
         byte [] buf  =   new   byte [ 1024 ];
         int  len  =   0 ;

        response.reset();  //  非常重要
         if  (isOnLine) {  //  在线打开方式
            URL u  =   new  URL( " file:/// "   +  filePath);
            response.setContentType(u.openConnection().getContentType());
            response.setHeader( " Content-Disposition " ,  " inline; filename= "   +  f.getName());
             //  文件名应该编码成UTF-8
        }  else  {  //  纯下载方式
            response.setContentType( " application/x-msdownload " );
            response.setHeader( " Content-Disposition " ,  " attachment; filename= "   +  f.getName());
        }
        OutputStream out  =  response.getOutputStream();
         while  ((len  =  br.read(buf))  >   0 )
            out.write(buf,  0 , len);
        br.close();
        out.close();
    }


本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/seng3018/archive/2010/02/22/5316178.aspx
分享到:
评论

相关推荐

    最新java下载安装图文教程

    本文将指导您从下载 Java 软件到配置 Java 环境变量,最后测试 Java 环境的安装是否成功。 一、Java 下载和安装 首先,您需要从 Oracle 官方网站(www.sun.com)下载 Java 软件。在下载页面,选择适合您的操作系统...

    JAVA下载远程文件到本地的最精简代码

    JAVA下载远程文件到本地的最精简代码,就一行代码,不信自己看,而且是官方提供,绝对适合你,一个远程URL,一个本地路径,文件就在你的电脑上了

    DownloadUtil(JAVA下载网络文件,解决路径或文件名含中文问题).java

    JAVA下载网络文件,解决路径或文件名含中文问题的工具类!

    Java下载txt文件

    Java实现把字符串下载为txt文件的工具类。

    Java下载器的简单实现及实时进度和速度获取

    本文将深入探讨如何实现一个简单的Java下载器,并且重点讲解如何实现下载的实时进度显示和速度计算。以下是对这个主题的详细阐述: 一、基础准备 在开始编写Java下载器之前,我们需要了解HTTP协议的基本概念,因为...

    Java下载element-ui

    Java下载element-ui

    JAVA下载远程Linux服务器的文件

    在Java编程中,有时我们需要与远程Linux服务器进行交互,例如下载或上传文件。在这个场景下,我们可以使用SMB(Server Message Block)协议,这是一种网络文件共享协议,常见于Windows系统,但同样可以应用于Linux...

    java利用oss实现下载功能

    Java下载功能的实现有多种方式,一般来说可以分为三种:第一种是将要下载的内容写到本地目录,然后将目录返回给前端,利用a标签下载;第二种是本地不允许访问,挂载目录,使目录可以对外访问,同样的,把目录返给...

    java下载可选择保存路径

    java生成excel并下载到本地(可选择保存路径),文件通过流的形式响应客户端浏览器下载到本地。

    java下载免费

    java下载免费,适用NC各种运用软件,兼容性较好。用友各种财务软件均适合

    opencv-java480.dll windows 64 opencv-java480.jar下载

    描述中的“opencv_java下载使用”表明了本话题主要关注如何下载和使用OpenCV的Java版本。首先,你需要从官方网站或者可靠的第三方源下载适用于你的操作系统的OpenCV库,通常包括`jar`文件和对应的`dll`文件。下载后...

    java下载.txt

    Java多(老)版本下载地址,下载java以前的版本找不到下载地址?,该地址是官网提供的下载以前java版本的地址!

    JAVA下载网站

    JAVA下载网站

    java下载+Java开发环境配置+测试JDK

    Java 下载、Java 开发环境配置和测试 JDK Java 下载是 Java 开发的第一步,下载 Java 开发工具包 JDK 是 Java 开发环境的基础。JDK 提供了 Java 开发所需的所有工具和库,如 Java 编译器、Java 运行时环境、Java ...

    java下载文件

    java下载文件

    java 下载文件 压缩且删除源文件(支持文件夹与文件)

    1、指定文件可下载并且服务器端会删除此文件。 2、指定文件夹(文件夹中必须有一个文件),程序会自动的压缩文件为 zip,然后下载删除源文件与压缩文件。 3、可以指定文件都为最后生成为zip文件下载,且删除源文件...

    java 下载网络图片

    java 下载网络图片,本人试用,务下载

    JAVA下载通用版

    JAVA下载通用版

    java下载001---111

    java下载001---111java下载001---111java下载001---111java下载001---111java下载001---111java下载001---111java下载001---111java下载001---111

    java下载器源代码

    这是一个用java写的下载器源代码,完整,可做深入学习网络编程

Global site tag (gtag.js) - Google Analytics