用link打开文件下载servlet
如 <a target="_blank" href="servlet?文件名">
servlet中,文件下载
response.addHeader("Content-Disposition", "attachment; filename=\"" + fileName + "\"");第一问:这样会留下空白页面,怎么关掉这个空白页面?如果改称在ie窗口打开模式,即
response.addHeader("Content-Disposition", "inline; filename=\"" + fileName + "\"");
空白页面问题是没有了
但是当我想把这个文件进行保存的时候,文件名各式各样,有时候会是servlet名字
有时候会是url
第二问:如果第一问解决不了,用什么方法解决文件名问题?

解决方案 »

  1.   

    response.setContentType("abcdefg")
    下不下载还得看客户端设置
      

  2.   

    最好的方法我认为还是用URL转换,将下载的地址转换为http://aaa.ccc.com/xxxxxxxx/a.exe这样的格式,中间的xxxxxxx通过RequestProcessor动态生成。这样至少能够保证a.exe这个文件名正确。如果你不想修改太多的代码,我的建议是:在Servlet最后,不要用forward跳转,因为这样目标会是你这个Servlet的名字,同Redirect或者javascript跳转到一个真实的下载地址,这样就正常了。
      

  3.   

    setContentType已经设置
    to : kevinmartin(海魂)
    不能连接到真实地址,因为下载的文件不一定要在服务器上我使用流outpustream下载的
    下载都好用
    但是用inline表示的时候
    我想把文件 “另存为”的时候,发现文件名随着文件的扩展名各式各样
    不知道我说的够不够清楚
      

  4.   

    我发现文件名字是随着窗口的title而变
    有没有通过修改response的头部信息来修改ie窗口的title方法?