我想在服务器上下载我打成的zip文件,让他弹出保存的画面。改如何实现?
在jsp里
在jsp里
解决方案 »
- 后台取图片路径,IE看到图片,firefox看不到图片。
- hibernate 缓存问题
- 关于Session的问题???高手帮忙解决,急急急急急!
- java两个大整数相乘的 算法怎么写? 如何避免内存溢出呢?
- 一个页面刷新的问题?郁闷一整天了!
- 别人C调我们java的webS出现这个错误:org.hibernate.QueryException: ClassNotFoundException,求救急!
- 如何保护WEB站点中的特定资源
- 为什么我的applet在IE中可以看到,但在netscape中就成白板了呢??
- 在线等待,JSP小问题
- 一个JSP调用JavaBean的小问题!
- 【200分】还是关于动态添加一个表格块的问题?
- 杯具啊。断电。文件大小还显示原来大小,但是打开里面一行代码都没。
byte[] b = new byte[1024];
File file = new File(fileName);
response.reset();
response.setHeader("Content-disposition", "inline;filename=" + fileName);
long fileLength = file.length();
String length = String.valueOf(fileLength);
response.setHeader("Content_Length", length);
FileInputStream in = new FileInputStream(file);
int n = 0;
while((n = in.read(b)) != -1)
{
o.write(b, 0, n);
}
public ActionForward download(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws Exception {
// TODO Auto-generated method stub
String filePath=(String)request.getParameter("url");
File f = new File(filePath);
String filename = f.getName();
if(!f.exists()){
response.sendError(404,"没有您要打开的文件");
return null;
}
BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
byte[] buf = new byte[1024];
int len = 0;
response.reset();//非常重要
//纯下载方式
response.setContentType("application/x-msdownload");
response.setCharacterEncoding("UTF-8");
response.setHeader("Content-Disposition", "attachment; filename=" + new String(filename.getBytes(), "ISO-8859-1"));//保证下载框显示中文;
OutputStream out = response.getOutputStream();
while((len = br.read(buf)) >0)
out.write(buf,0,len);
br.close();
out.close();
return null;
}如果你觉得我的建议可行的话,就帮我点击一下www.55find.cn网站,增加一下点击率谢谢阿