我想在服务器上下载我打成的zip文件,让他弹出保存的画面。改如何实现?
在jsp里

解决方案 »

  1.   

    OutputStream o = response.getOutputStream();
     byte[] b = new byte[1024];
        File file = new File(fileName);
        response.reset();
        response.setHeader("Content-disposition", "inline;filename=" + fileName);
        long fileLength = file.length();
        String length = String.valueOf(fileLength);
        response.setHeader("Content_Length", length);
        FileInputStream in = new FileInputStream(file);
        int n = 0;
        while((n = in.read(b)) != -1)
    {
         o.write(b, 0, n);
        }
      

  2.   

    这是我的下载方法
    public ActionForward download(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response) throws Exception {
    // TODO Auto-generated method stub

      String filePath=(String)request.getParameter("url");   

      File f = new File(filePath);
      
      String filename = f.getName();  
      
      if(!f.exists()){
       response.sendError(404,"没有您要打开的文件");
       return null;
      }
      BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
      byte[] buf = new byte[1024];
      int len = 0;   
      response.reset();//非常重要
      //纯下载方式
      response.setContentType("application/x-msdownload");
      response.setCharacterEncoding("UTF-8");
      response.setHeader("Content-Disposition", "attachment; filename=" + new String(filename.getBytes(), "ISO-8859-1"));//保证下载框显示中文;   
      OutputStream out = response.getOutputStream();
      while((len = br.read(buf)) >0)
       out.write(buf,0,len);
      br.close();
      out.close();

            return null;   
       }如果你觉得我的建议可行的话,就帮我点击一下www.55find.cn网站,增加一下点击率谢谢阿
      

  3.   

    不好意思,那个网站我点,返回一个error。
      

  4.   

    不可能啊,www.55find.cn   www.55find.com不会点错了吧  :)