<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    weizi2012

    weizi2012

    2012年9月27日 #

    java 文件下載

    /**
      * 本地下載
      *
      * @param response
      * @throws FileNotFoundException
      */
     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();
      }
     }

     /**
      * 網絡文件下載
      *
      * @param response
      * @throws MalformedURLException
      */
     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];
       @SuppressWarnings("unused")
       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();
      }
     }

     /**
      * 支持在線打開下載
      *
      * @param filePath
      * @param response
      * @param isOnLine
      * @throws Exception
      */
     public void downLoad(String filePath, HttpServletResponse response,
       boolean isOnLine,String fname) throws Exception {
      System.out.println("filePath:" + filePath);
      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="
         + fname);
       // 文件名應該編碼成UTF-8
      } else { // 純下載方式
       response.setContentType("application/x-msdownload");
       response.setHeader("Content-Disposition", "attachment; filename="
         + fname);
      }
      OutputStream out = response.getOutputStream();
      while ((len = br.read(buf)) > 0)
       out.write(buf, 0, len);
      br.close();
      out.close();
     }

    posted @ 2012-09-27 10:57 jiangwei 閱讀(1304) | 評論 (2)編輯 收藏

    My Links

    Blog Stats

    常用鏈接

    留言簿

    隨筆檔案

    文章檔案

    搜索

    最新評論

    主站蜘蛛池模板: 99久久免费精品高清特色大片| 国产亚洲女在线线精品| 国产日韩AV免费无码一区二区| 日韩亚洲精品福利| 深夜特黄a级毛片免费播放| 国产一区二区三区无码免费| 在线看亚洲十八禁网站| 五月婷婷亚洲综合| 久久WWW免费人成—看片| 亚洲开心婷婷中文字幕| 亚洲精品免费视频| 亚洲国产精品无码久久久| 拍拍拍又黄又爽无挡视频免费| 中文字幕亚洲码在线| 国产免费69成人精品视频| 一道本在线免费视频| 亚洲AV一宅男色影视| 18国产精品白浆在线观看免费| 亚洲色无码专区一区| 亚洲国产午夜中文字幕精品黄网站 | 亚洲av无码天堂一区二区三区 | yellow免费网站| 国产成人亚洲精品青草天美| 亚洲免费黄色网址| 亚洲av乱码一区二区三区按摩 | 又大又硬又爽免费视频| 十八禁在线观看视频播放免费| 久久亚洲国产成人亚| 最近2019中文字幕免费看最新| 国产亚洲视频在线| 亚洲爆乳精品无码一区二区三区| 久草视频免费在线| 人妻18毛片a级毛片免费看| 亚洲最新视频在线观看| 日本免费一区二区三区最新vr| 最近更新免费中文字幕大全| 亚洲人xxx日本人18| 永久亚洲成a人片777777| 中文字幕无码免费久久99| 九九九国产精品成人免费视频| 亚洲神级电影国语版|