关于java文件下载的问题,有做过的朋友帮忙进来看一看

下面是java下载代码,写在sur007这个action中publicvoiddownload(StringfilePath,HttpServletResponseres... 下面是java下载代码,写在sur007这个action中

public void download(String filePath,HttpServletResponse response,boolean isOnLine,HttpServletRequest request) throws Exception{
File file = new File(filePath);
if(!file.exists()){
response.sendError(404,"File not found!");
}
BufferedInputStream br = new BufferedInputStream(new FileInputStream(file));
byte[]buf = new byte[1024];
int len = 0;
response.reset();
if(isOnLine){
URL u = new URL("file:///"+filePath);
System.out.println("file:///"+filePath);
response.setContentType(u.openConnection().getContentType());
response.setHeader("Content-Disposition", "inline; filename="+file.getName());
}else{
response.setContentType("application/x-msdownload");
response.setHeader("Content-Disposition", "attachment; filename="+file.getName());

}
OutputStream out = response.getOutputStream();
while((len = br.read(buf)) >0)
out.write(buf,0,len);
br.close();
out.close();
}
-----------------------------------------------------------------
下面是下载文件时,页面弹出的错误框截图
展开
 我来答
幽冥神者
2011-07-22 · TA获得超过3213个赞
知道大有可为答主
回答量:1953
采纳率:50%
帮助的人:1786万
展开全部
你的struts配置文件中,关于这个action的result type是什么?
追问
我没配。。我这个不返回页面
追答
struts2配置文件中,有一种方式是需要在下载时配置result type的值为stream
不知道你这个没配是不是属于这种情况 试试看吧
依依家家
2011-07-22 · TA获得超过100个赞
知道答主
回答量:271
采纳率:0%
帮助的人:109万
展开全部
我也是,如果用火狐下载就没问题,ie就不能下载
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式