[FW:] Writing big files to ServletOutputStream

原创 2004年10月15日 00:41:00

Problem when writing big files to ServletOutputStream

I am using the following code to write files to servlet output stream. The problem is the browser is not downloading the entire file when the file size grows above 10 MB. Any help would be greatly helpful.

FileInputStream fis = new FileInputStream(new File(fileName));
response.setHeader("Content-Disposition:", "attachment;filename=" + fileName );
BufferedInputStream bis= new BufferedInputStream(fis);
ServletOutputStream sos = response.getOutputStream();
byte[] buffer = new byte[5000];
response.setHeader("Content-Length:", String.valueOf (bis.available()));
while (true) {
   int bytesRead = bis.read(buffer, 0, buffer.length);
   if (bytesRead < 0)
   break;
   sos.write(buffer, 0, bytesRead);
}
fis.close();
sos.flush();
sos.close();

bar_begin.gif     Message #141567 bar_div.gifMark as noisy Mark as noisy Mark as noisy bar_div.gifPost reply Post reply Post reply bar_div.gifGo to top Go to top Go to top bar_end.gif
spacer.gif

Problem when writing big files to ServletOutputStream

Posted By: Krishnan Muthusubramanian on October 06, 2004 @ 11:45 AM in response to Message #141542 0 replies in this thread
response.setHeader("Content-Length:", String.valueOf (bis.available()));
The 'available' method of InputStream does not return the number of bytes that avilable :). Check the Java Doc for this method.

Try new File(fileName).length() instead

Writing Files

package main import (     "bufio"     "fmt"     "io/ioutil"     "os" ) func check(e erro...
  • aeolus_pu
  • aeolus_pu
  • 2016年02月01日 14:53
  • 182

servletinputstream 和 servletoutputstream

servletinputstream public abstract class ServletInputStream extends InputStream         定义了一...
  • CNHK1225
  • CNHK1225
  • 2014年06月25日 14:08
  • 4608

FileInputStream和ServletOutputStream使用时遇到的问题

想用FileInputStream从服务器上读取文件,然后通过ServletOutputStream输出,这里有一个前提是:通过InputSteam中available方法返回的字节数小于1024,所...
  • Benjieming_Wang
  • Benjieming_Wang
  • 2009年05月04日 19:38
  • 5011

Doxygen: Could not open file xxx for writing - error 0x80070052

在Windows (win7 64-bit)上运行Doxygen的时候,总是遇到这个错误,困扰了我好久。 这次把Doxygen的源代码下载回来, 在Windows 7上成功编译(详情看这里),想...
  • zkong
  • zkong
  • 2011年12月25日 14:16
  • 1277

ServletOutputStream回写页面乱码

一段utf-16的string,整了好多种格式,硬是无法正确输出到页面上:   首先尝试了outputstream, 即便指定string-》byte[]的编码,还是出错   resp.get...
  • d8111
  • d8111
  • 2015年04月24日 17:56
  • 1136

二种“fatal error LNK1201: error writing to program database ” 解决办法

换了一台新电脑, 是WIN7+64位系统,因为项目需要,原来用VS2003做的项目,需要重新修改,但编译程序,出现PDB文件不能删除,不能改写。把VS2003关掉重启一下就可以了。上网找了二种办法,我...
  • USB_ABC
  • USB_ABC
  • 2016年10月10日 15:58
  • 675

在servlet中用outputStream输出数据以及中文数据的问题

在servlet中用outputStream输出数据以及中文数据的问题 今天学习了servlet中比较重要的一个知识点,在servlet中用reponse对象的outputStream输出数据以...
  • lixiangmao
  • lixiangmao
  • 2013年12月06日 15:39
  • 1541

reading and writing xml files

我们可以将various OpenCV 的 data strucures 以及C++ 中的primitive data structures 写入到XML 格式 或者 YAML 格式的文件中去, 也可...
  • a130737
  • a130737
  • 2015年01月06日 10:30
  • 578

Servlet--ServletInputStream类,ServletOutputStream类

ServletInputStream类 定义 public abstract class ServletInputStream extends InputStream 这个类定义了一个用来读取客...
  • u011794238
  • u011794238
  • 2015年06月15日 11:22
  • 1807

Reading and writing text files

http://www.javapractices.com/topic/TopicAction.do?Id=42 In JDK 7, the most important classes fo...
  • guolong1983811
  • guolong1983811
  • 2014年02月23日 23:03
  • 482
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[FW:] Writing big files to ServletOutputStream
举报原因:
原因补充:

(最多只允许输入30个字)