程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> servlet-文件復制流下載文件,浏覽器無反應,求助

servlet-文件復制流下載文件,浏覽器無反應,求助

編輯:編程綜合問答
文件復制流下載文件,浏覽器無反應,求助

文件夾是存在的,但是浏覽器死活不彈出保存對話框

 String tempPath ="E:\\Studytools\\apache-tomcat-6.0.41\\webapps\\report\\uploads\\00000001_20150525190016.zip";
        System.out.println(tempPath);
        File file = new File(tempPath);
        /* 如果文件存在 */  
        if (file.exists()) {  
            String disName = URLEncoder.encode(file.getName(), "UTF-8");  
            response.reset();  
            response.setContentType("application/x-msdownload");  
            response.addHeader("Content-Disposition","attachment; filename=\"" + disName + "\"");  
            int fileLength = (int) file.length();  
            response.setContentLength(fileLength);  
            /* 如果文件長度大於0 */  
            if (fileLength != 0) {  
                /* 創建輸入流 */  
                InputStream ins = new FileInputStream(file);  
                byte[] buffer = new byte[4096];  
                /* 創建輸出流 */  
                ServletOutputStream ous = response.getOutputStream();  
                int readLength;  
                while (((readLength = ins.read(buffer)) != -1)) {  
                    ous.write(buffer, 0, readLength);  
                }  
                ins.close();  
                ous.flush();  
                ous.close();  
            } else{
                System.out.println("length is null");
            } 
        }else{
            System.out.println("not found");
        }

最佳回答:


你浏覽器直接訪問的servlet還是ajax?ajax可不會彈出保存對話框,要window.location='xxxx'來下載

u011254025
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved