如题!谢谢各位
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("application/jar");//设置文件类型
response.setHeader("Content-Disposition", "attachment;filename=Servlet-apt.jar");
//下载到客户端默认的文件名
File f=new File("E:\\Servlet-Api.jar");
FileInputStream is=new FileInputStream(f);
ServletOutputStream os=response.getOutputStream();
byte[] elem=new byte[1024];
int a=0;
while((a=is.read(elem))!=-1){
os.write(elem,0,a);

}
os.flush();

}
请问各位如何文件的 自动下载,就是当我加载这个servlet后开始自动下载文件!
小弟有几个疑问,1:如何指定文件在客户端存放的位置?
2:判断是否下载成功!
今天刚刚学了servlet文件的下载,老师让我们自己去实现一些更多功能,刚刚百度了半天没找到有用的教程!
希望各位高手能指点一二,谢谢!

解决方案 »

  1.   

    你这段代码是直接弹出一个下载框,上面有打开和保存按钮。楼主估计你将输入输出流搞反了:
    //下载到客户端默认的文件名
    File f=new File("E:\\Servlet-Api.jar");
    FileInputStream is=new FileInputStream(f);
    这个是文件输入流,主要从硬盘上的文件E:\\Servlet-Api.jar中读取数据,而不是下载到客户端。
      

  2.   

    恩 我知道那个是文件输入流,是读取数据的,但是我下面的 ServletOutputStream os=response.getOutputStream();
    这个是下载到客户端的,
    我的问题是怎么实现servlet自动下载文件!请指点 谢谢!