由于用文件流写给浏览器,出现对话框的方法已经使用过,在linux中测试有问题,暂没办法调通,故问问看是否有别的办法可实现类似效果?

解决方案 »

  1.   

    <a href="下载文件的url路径"></a>
      

  2.   

    由于tomcat 是 5.5的, 对于office 07系列后缀docx,pptx,乃至 zip的文件,下载都有问题,会自动修改下载文件的后缀,所以暂不考虑这个方法
      

  3.   

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
    response.setContentType("text/html");
    InputStream fi = new FileInputStream("P:\\cssz.swf");
    byte[] b = new byte[10240];
    int len;
    while ((len = fi.read(b)) != -1) {
    response.getOutputStream().write(b);
    }
    fi.close();
    }这样呢,在服务器上将文件读出来,然后将流返回,不知道是不是你说已经用过的,
      

  4.   


    嗯,是的,用 getOutputStream() 写的时候,在linux中有问题,下载大小是0, 不过现在试了下 response.getWriter();写,是有大小返回的,不过可能是编码问题,写出来的的大小比源文件要大,p = response.getWriter();
    int j = bis.read();
    while (j != -1)
    {
        p.write((char)j);
        j = bis.read();
    }
      

  5.   

    是byte[] b = new byte[10240];的问题吗,这缓冲区,这个要计算的,貌似会自己填充的,