第一种下载方式:
此方式 下载,在服务器上必须有文件 的存在
用java 程序 从服务器 上下载文件到 本地电脑上
和上传不一样的是,下载是从服务器上的文件复制到本地电脑上
那么,服务器必须 是输出者 ,本地就是接收者
服务器端的输出,只能是response 对象 , 本地接收对象 就是File ,从response 到 File 之间 需要一座桥梁,那么这座桥梁就是 io ----------流
1、用到 response 对象从服务器端输出此文件
2、用File 创建对象
3、用字节/字符流 进行输送
public boolean download(HttpServletResponse response,
ActionContext context) {
boolean flag = true;
try {
String filePath2 = context.getRequest().getRealPath("/"); //取当前系统路径
// path是指欲下载的文件的路径。在path 路径下创建名为
File file = new File(filePath2 + "zjh/" + "下载.xls"
if (!file.exists()){
flag = false;
}
// 取得文件名。
String filename = file.getName();
// 取得文件的后缀名。
String ext = filename.substring(filename.lastIndexOf(".") + 1)
.toUpperCase();
// 以流的形式下载文件。
InputStream fis = new BufferedInputStream(new FileInputStream(
filePath2 + "zjh/" + "下载.xls"
byte[] buffer = new byte[fis.available()];
fis.read(buffer);
fis.close();
// 清空response
response.reset();
response.addHeader("Content-Disposition", "attachment;filename="+ java.net.URLEncoder.encode("下载.xsl","utf-8"));
response.addHeader("Content-Length", "" + file.length());
OutputStream toClient = new BufferedOutputStream(response.getOutputStream());
response.setContentType("application/octet-stream");
toClient.write(buffer);
toClient.flush();
toClient.close();
} catch (IOException ex) {
ex.printStackTrace();
flag = false;
}
// return response;
return flag;
}
注:服务器上必须要有当前被下载的文件,才能运用此方法下载
分享到:
相关推荐
本话题将详细探讨如何通过Ajax实现Java文件的下载,并介绍相关的核心概念和技术。 1. **Ajax**(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下,能够更新部分网页的技术。它通过JavaScript...
Java文件下载的几种方式,是很方便的,找了半天找到了,共享一下
前端vue,后端java。 如果前端是其他语言,可自行转换。 实现在浏览器前端点击后的文件下载。 不是整个工程代码,只把涉及到下载用的前端的代码和后端的代码贴出来了,可以直接复制使用,有详细的步骤。 包含了前端...
文件下载的工具类java代码,设置编码格式,避免下载中文乱码
java文件下载工具类
进度条:78%[===================> ]97.7K/s, will be finished in 75.59s 限速、文件网络地址、文件本地路径,均可在代码里修改。
分布式全局唯一ID生成算法,
用Java脚本本在jsp里面写的,采用流的形式下载文件,非常简单,只是实现了下载的功能,
Java API文档是Java开发者不可或缺的参考资料,它详细记录了Java编程语言的标准库,包括类、接口、方法和属性等核心元素。这些文档不仅提供技术规格,还包含使用示例,帮助程序员理解和应用Java的各类功能。 1. **...
java文件下载工具类,可以下载文件
Java实现文件下载,支持好几种下载方法,解决了中文文件名乱码问题.
Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 Java文件管理系统源码 ...
Java文件工具类
在Java编程领域,开发一个下载器是常见的任务,特别是对于处理大文件或网络资源时。本文将深入探讨如何实现一个简单的Java下载器,并且重点讲解如何实现下载的实时进度显示和速度计算。以下是对这个主题的详细阐述:...
大文件的快速下载,经测试在100M带宽的网络下,下载一个40M的文件,不超过两秒钟,当然还得根据自己电脑的配置来讲。 其他说明: 文件如果特别小,而自己网络又非常好的情况下,不建议使用线程池进行下载,因为...
后台代码不用写了,在action中直接输入文件地址调用
下载完成后,用户可以直接双击文件图标打开文档查看。大多数操作系统默认都配备了 CHM 文件阅读器,如 Windows 自带的 HTML Help Workshop 就可以用来打开和浏览 CHM 文件。 ### 4. 学习与实践 对于希望深入学习 ...
(1)分别运行工程两个包中的两个.java文件(UploadClient.java和UploadServer.java)分别会弹出“上传客服端”和“上传服务器”两个窗口。 (2)单击“上传服务器”窗口中的“启动服务..”按钮。 (3)单击“上传...
在Java开发中,生成和处理PDF文档是一项常见的需求。Itext是一个强大的库,它允许开发者在Java环境中创建、编辑和修改PDF文档...通过实践和理解这些示例,你将能够熟练地在Java项目中运用Itext处理PDF文件的下载需求。