开发中文件上传做得多了,文件下载都是第一次遇到;原理就是往后台的输出流写入文件的内容,现总结如下:
public void downLoad(String filePath, String contentType) throws Exception {
// System.out.println(filePath);
File f = new File(filePath);
if (!f.exists()) {
res.sendError(404, "对不起,下载文件没有找到,无法下载!");
return;
}
BufferedInputStream br = new BufferedInputStream(new FileInputStream(f));
byte[] buf = new byte[1024];
int len = 0;
//res为请求对应的HttpServletResponse对象
res.reset(); // 非常重要
res.setContentType(contentType + ";charset=utf-8");
res.setHeader("Content-Disposition", "attachment; filename="
+ f.getName());
OutputStream out = res.getOutputStream();
while ((len = br.read(buf)) > 0)
out.write(buf, 0, len);
br.close();
out.flush();
out.close();
}
至于 res.setContentType(contentType + ";charset=utf-8");
中setContentType的值根据不同的文件类型不同有相应不同的写法 对应关系大体如下:
(注:如果文件后缀名为avi则写 res.setContentType("video/avi")
)
avi-----video/avi
bmp-----application/x-bmp
doc-----application/msword
gif-----image/gif
htm或者html-----text/html
jpg或者jpeg-----image/jpeg
mht或者mhtml-----message/rfc822
mp3-----audio/mp3
ppt-----application/vnd.ms-powerpoint
pptx-----application/vnd.openxmlformats-officedocument.presentationml.presentation
rm-----application/vnd.rn-realmedia
rmvb-----application/vnd.rn-realmedia-vbr
xls-----application/x-xls
xml-----text/xml
rar-----application/octet-stream
zip-----application/x-zip-compressed
swf-----application/x-shockwave-flash
wav-----audio/wav
txt-----text/plain
excel/zip:data/Application
分享到:
相关推荐
内容包含有java_api_1.6中文文档、java_api_1.8中文文档
提供一个学习Java的帮助资料。让你更好的学习Java。对Java有更高层次的理解
生成的Java API文档可以保存为HTML文件,并可以在Web浏览器中查看和浏览。在许多集成开发环境(IDE)中,例如Eclipse、NetBeans和IntelliJ IDEA等,都提供了内置的Java API文档浏览器,可以直接查看和搜索Java API文档...
用ajax实现的java文件打包下载。可以输入扩展名选择文件下载。
JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷歌翻译,非人工翻译。准确性不能保证,请与英文版配合使用 ...
中文JAVA API。
ElasticSearch Java API 中文文档 ElasticSearch Java API 中文文档
Java实现文件下载并解决中文文件名乱码
前端vue,后端java。 如果前端是其他语言,可自行转换。 实现在浏览器前端点击后的文件下载。 不是整个工程代码,只把涉及到下载用的前端的代码和后端的代码贴出来了,可以直接复制使用,有详细的步骤。 包含了前端...
JAVA常用API文档 中文完整版.zip
Java实现文件下载功能,以WORD文档方式展现给用户看。
(1)分别运行工程两个包中的两个.java文件(UploadClient.java和UploadServer.java)分别会弹出“上传客服端”和“上传服务器”两个窗口。 (2)单击“上传服务器”窗口中的“启动服务..”按钮。 (3)单击“上传...
简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法 简单的文件下载 Java写法
java文件下载的几种方式
Java文件下载的几种方式,供大家参考!!!
java项目文档
java API中文文档, java API中文文档, java API中文文档
网上收集,Java文件夹遍历和FTP下载代码和java文件下载代码
java使用itext实现pdf文件下载小案例,通过系统路径下载,和通过浏览器下载
Java API文档中文版.zip