JAVA实现文件下载,浏览器端得到数据没反应

代码如下publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServ... 代码如下
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {

//得到要下载的文件名称
String filename=request.getParameter("filename");
//文件存放的路径,合成绝对路径
String dir = this.getServletContext().getRealPath("/");
String filepath=dir+"bksh"+"\\"+filename;
//得到这个文件的对象
File f=new File(filepath);
//response的编码方式为.doc下载
response.setContentType("application/msword");
//写明要下载的文件的大小
response.setContentLength((int)file.length());
//文件名
response.setHeader("Content-Disposition", "attachment; filename=" + filename);

//独处文件的IO流
FileInputStream fis=new FileInputStream(file);
BufferedInputStream buff=new BufferedInputStream(fis);

byte [] b=new byte[1024];//相当读文件的缓存
long k=0;//该值用于计算当前实际下载了多少字节

//response对象得到输出流
OutputStream myout=response.getOutputStream();

//开始循环下载

while(k<file.length()){

int j=buff.read(b,0,1024);
k+=j;

//将b中的数据写到客户端的内存
myout.write(b,0,j);

}

//将写入到客户端的内存的数据,刷新到磁盘
myout.flush();

firbug显示服务器已经返回了数据,但是貌似浏览器不任务它需要下载这些数据。。。
求高人解答,在线等
展开
 我来答
412736507
2013-12-13 · TA获得超过389个赞
知道小有建树答主
回答量:845
采纳率:0%
帮助的人:495万
展开全部
建议你
1.重启电脑
2.检查网速
3.换个浏览器试试,试试腾讯电脑管家-软件管理-软件仓库-浏览器-找到你想要的下载就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gozhangqing12
2013-12-13
知道答主
回答量:42
采纳率:0%
帮助的人:32.9万
展开全部
int length = b.length;
response.setContentType("application/vnd.ms-excel");//文件格式,此处设置为excel
response.setHeader("Content-Disposition",
"attachment;filename=文件.xls");//此处需要设置下载文件的默认名称
response.setContentLength(length);
java.io.OutputStream o = response.getOutputStream();
o.write(reportContent, 0, length);
o.flush();
out.clear();
out = pageContext.pushBody();
response.flushBuffer();
更多追问追答
追问
有什么不一样么。。。
追答
区别就是我的好使...
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
繇镭
2018-12-29
知道答主
回答量:0
采纳率:0%
帮助的人:0
展开全部

回答一下吧,万一有人看呢,我是用ajax请求的,所以出现了这样的问题

解决方案:javaweb实现文件下载用ajax请求(别人写的)

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Mc_Flyed
2013-12-13 · 超过47用户采纳过TA的回答
知道小有建树答主
回答量:160
采纳率:0%
帮助的人:119万
展开全部
你换个浏览器试下,然后再debug你的程序看看你的输出流生成了没
追问
IE firefox chrome都试了,有输出流。。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式