废话不多说
注意:不能用ajax下载哈,需要用页面请求!
public void download() throws IOException {
String filepath = request.getParameter("downurl");//这个是文件的路径
String fullFilePath = ServletActionContext.getServletContext()
.getRealPath(filepath);
/* 读取文件 */
File file = new File(fullFilePath);
/* 如果文件存在 */
try {
if (file.exists()) {
String filename = URLEncoder.encode(file.getName(), "utf-8");
response.reset();
response.setContentType("application/x-msdownload");
response.addHeader("Content-Disposition","attachment; filename=\"" + filename + "\"");
int fileLength = (int) file.length();
response.setContentLength(fileLength);
/* 如果文件长度大于0 */
if (fileLength != 0) {
/* 创建输入流 */
InputStream inStream = new FileInputStream(file);
byte[] buf = new byte[4096];
/* 创建输出流 */
ServletOutputStream servletOS = response.getOutputStream();
int readLength;
while (((readLength = inStream.read(buf)) != -1)) {
servletOS.write(buf, 0, readLength);
}
inStream.close();
servletOS.flush();
servletOS.close();
}
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
这个下载是基于servlet实现的。用这种下载文件好些,比晓得地址直接就链接过去。因为这样我只是可以判断用户是否登录或者有没权限什么的
相关推荐
Java文件下载的几种方式,供大家参考!!!
Java文件下载的几种方式,是很方便的,找了半天找到了,共享一下
前端vue,后端java。 如果前端是其他语言,可自行转换。 实现在浏览器前端点击后的文件下载。 不是整个工程代码,只把涉及到下载用的前端的代码和后端的代码贴出来了,可以直接复制使用,有详细的步骤。 包含了前端...
文件下载的工具类java代码,设置编码格式,避免下载中文乱码
用ajax实现的java文件打包下载。可以输入扩展名选择文件下载。
java文件下载工具类
java文件下载的几种方式
http://blog.csdn.net/r3lish/article/details/51912543 进度条:78%[===================> ]97.7K/s, will be finished in 75.59s 限速、文件网络地址、文件本地路径,均可在代码里修改。
Java文件下载相关资料搜集
用Java脚本本在jsp里面写的,采用流的形式下载文件,非常简单,只是实现了下载的功能,
分布式全局唯一ID生成算法,
主要用于文件的下载,一个小例子,个人感觉还不错,给大家共享下。
java文件下载工具类,可以下载文件
用java代码实现文件下载的使用例子,实用简洁。
这是java下载文件的案例代码
Java实现文件下载,支持好几种下载方法,解决了中文文件名乱码问题.