String mimetype=dds.getString("mimetype");//这是设置它的类型

response.getHttpServletResponse().reset();  
response.setContentType(mimetype);   
response.setHeader("Content-Disposition", "attachment;   filename="+ new String(name.getBytes(), "iso8859-1"));//处理默认文件名的中文问题   
ServletOutputStream os = response.getHttpServletResponse().getOutputStream();
//File f = new File (url);
FileInputStream in = new FileInputStream(url);
long old = System.currentTimeMillis();
byte[] data = new byte[10*1024*1024];
int temp = -1;
int c = 0;
while ((temp = in.read(data)) != -1) 
{
os.write(data, 0, temp);
os.flush();

}

解决方案 »

  1.   

    浏览器向服务器发送请求,服务器在处理完请求后会向浏览器输出结果,这个过程是由一次请求完成的所以会一起输出到浏览器,除非你有多个请求.
      

  2.   

    因为视屏文件一般都在150mb左右!一次性读完的话,消耗的时间会比较久,可不可以先让它读到一半,输出到客户端,然后把剩下的再继续读!