就是啊,生成一个连接,直接response.sendRedirect(url)就ok

解决方案 »

  1.   

    不希望使用链接方式,希望能够将文件内容读入流内,通过流put到客户端,然后实现下载而且我是在页面上点击按钮,后台开始从数据库中读数据生成Excel文件的,希望点完按钮,文件生成后就可以直接开始下载,不需要做额外的操作有办法做吗?
      

  2.   

    File del = new File(Path);
          response.setHeader("content-disposition", "attachment;filename=xxx.xls");
          RandomAccessFile out = new RandomAccessFile(del,"r");
          byte[] line = new byte[(int)out.length()];
          out.read(line);
          response.getOutputStream().write(line);
          out.close(); ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??
      

  3.   

    wangli8850(wangli) 的方法不错,可以直接重定向到客户机器上或着你可以用流来处理
            String contentType="application/x-java-serialized-object";
            response.setContentType(contentType);
            ObjectOutputStream out=new ObjectOutputStream(response.getOutputStream());
            sss=xmlFile.getXMLFile();
            out.writeObject(sss.trim());
            out.flush();
      

  4.   

    k,你用我的代码了吗?不可能出现你的情况的.
     ------------------------------------------------------
               我们还年轻牛奶会有的奶牛也会有的 
                 可天天在 csdn 混这些会有吗 ??
      

  5.   

    呵呵,好像可以了。我再试试。有一个问题啊,生成Excel时的文件路径能不能用相对路径指定啊?我用的是JBoss,不知道为什么,他会将Excel文件创建在jboss/bin下。能不能用相对地址指定在站点的根目录下?javabean中如何写这个路径呢?
      

  6.   

    问题已经解决,但是用的方法比较傻。
    我现在是用jexcelapi创建Excel文件在服务器端,文件名用Oracle的序列号来生成。然后用inputStream处理,供客户端下载,最后删除服务器端文件。一直想直接通过流来处理,不需要在服务器端硬盘上创建实际的文件,但是不知道该怎么做。如果友人会做的话,希望能够交流一下。明天如果还没有人回应,就会结贴了。谢谢大家。祝国庆愉快