posts - 0, comments - 77, trackbacks - 0, articles - 356
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          struts中實現(xiàn)文件下載

          Posted on 2007-08-05 18:06 semovy 閱讀(582) 評論(2)  編輯  收藏 所屬分類: struts
          struts中實現(xiàn)文件下載的主要代碼:

          public ActionForward execute(ActionMapping mapping, ActionForm form,
             HttpServletRequest request, HttpServletResponse response) {
            String strFileName = "測試文件.rar";
            File file = new File("具體路徑" + strFileName);//
            if(file.exists()){
             try{
              BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file));
              byte[] buffer = new byte[1024];
              strFileName = java.net.URLEncoder.encode(strFileName, "UTF-8");//處理中文文件名的問題
              strFileName = new String(strFileName.getBytes("UTF-8"),"GBK");//處理中文文件名的問題
              response.reset();
              response.setCharacterEncoding("UTF-8");
              response.setContentType("application/x-rar-compressed");//不同類型的文件對應不同的MIME類型
              response.setHeader("Content-Disposition","attachment; filename=" + strFileName);
              OutputStream os = response.getOutputStream();
              while(bis.read(buffer) > 0){
               os.write(buffer);
              }
              bis.close();
              os.close();
             }
             catch(Exception e){
              ......
             }
            }
            return mapping.getInputForward();
           }

          在Struts中的實現(xiàn)和在ASP.NET的實現(xiàn)類似,這段代碼就是將服務器上的文件以流的方式發(fā)送到客戶端瀏覽器,如果要是在線打開的方式的話還應將response.setHeader("Content-Disposition","attachment; filename=" + strFileName);改寫為response.setHeader("Content-Disposition","inline; filename=" + strFileName);


          評論

          # re: struts中實現(xiàn)文件下載  回復  更多評論   

          2008-11-29 09:27 by 林瑞霞
          請問一下,您這個測試文件是指的什么

          # re: struts中實現(xiàn)文件下載  回復  更多評論   

          2009-04-16 15:10 by famingyuan
          沒有報錯么????
          主站蜘蛛池模板: 奉化市| 邯郸市| 治县。| 林州市| 富裕县| 锡林郭勒盟| 垣曲县| 临漳县| 密山市| 新密市| 武山县| 冀州市| 新乡市| 遂溪县| 双柏县| 巴青县| 电白县| 松滋市| 新邵县| 遂宁市| 资溪县| 开原市| 陇南市| 垫江县| 盐山县| 峨眉山市| 资溪县| 改则县| 白玉县| 襄垣县| 临高县| 将乐县| 遂宁市| 任丘市| 蒲江县| 台东市| 鄂伦春自治旗| 宁南县| 玉林市| 腾冲县| 大姚县|