Java如何实现文件打包下载功能
2014-07-15 15:17
627 查看
在日常项目开发中,我们会经常遇到,上传下载以及打包的常用功能,本节中就如何利用JAva自带的类库,实现zip压缩打包文件下载进行详细说明。注:不支持中文文件名,可在上传时就重命名文件名称.(下面是我的完整项目下载类代码,改下自己的包名即可使用)。
正题:
中间层Java代码:
正题:
中间层Java代码:
package com.etong.out.web; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.sql.SQLException; import java.util.Date; import java.util.HashMap; import java.util.zip.ZipEntry; import java.util.zip.ZipException; import java.util.zip.ZipOutputStream; public class ZipUtils { private String fileName; public void zipFile(File[] subs, String baseName, ZipOutputStream zos) throws IOException { for (int i=0;i<subs.length;i++) { File f=subs[i]; zos.putNextEntry(new ZipEntry(baseName + f.getName())); FileInputStream fis = new FileInputStream(f); byte[] buffer = new byte[1024]; int r = 0; while ((r = fis.read(buffer)) != -1) { zos.write(buffer, 0, r); } fis.close(); zos.flush(); zos.close(); } } public String getZipFileName() { return fileName; } public void setZipFileName(String fileName) { this.fileName = fileName+new Date().getTime()+".zip"; } }JSP引用方法:
<% SimpleDateFormat f = new SimpleDateFormat("yyyyMMdd_hhMMss"); response.setHeader("Content-disposition","attachment;filename=JMS"+f.format(new Date())+".zip"); ZipOutputStream zos = new ZipOutputStream(response.getOutputStream()); List jmsList = (List)workflowCommonDao.getListResult("OutNet.getNsrJmsWjxx",null); File[] files = new File[jmsList.size()]; for(int i=0; i<jmsList.size(); i++){ String inputStream = ((HashMap)jmsList.get(i)).get("WJDZ").toString(); files[i]=new File(inputStream); } ZipUtils zipUtil = new ZipUtils(); zipUtil.zipFile(files,"JmsFiles/", zos); zos.flush(); zos.close(); %>根据上述内容轻松完成了文件打包下载功能,这里JSP页面通过从数据库里面获得文件地址(当然也可以自己传相关文件路径)将相关文件打包至定义的zip包中,以供客户端进行下载保存!
相关文章推荐
- 【转载】Java如何实现文件打包下载功能
- java代码实现打包多个文件下载功能
- Java中如何使用组件实现文件上传下载
- Java实现文件下载功能
- as 3.0 如何浏览文件,实现文件上传和下载功能。
- Java 实现文件批量文件打包下载
- java实现文件上传,文件下载功能 源码
- java 如何实现文件下载时,弹出文件保存窗口
- jsp如何实现下载文件的功能
- java中如何实现文件打包上传以及自动解压
- java实现文件下载功能,自动弹出保存窗口
- 如何作证书并注册控件,并实现打包下载注册的功能(接前两片文章)(3)
- Java实现文件下载功能
- 如何实现java文件队列下载
- JavaWeb中struts2实现文件上传下载功能实例解析
- jsp中如何利用jspsmartupload实现文件上传下载功能
- .net如何实现文件下载功能
- java 通过 URL 类和 URLConnection类 以及输入流实现文件下载功能
- JAVA实现FTP服务器文件的上传,下载,删除功能
- Java实现文件自动打包成zip并下载的代码