java基础入门txt下载地址_java基础入门-ZipOutputStream打包下载
今天跟大家聊聊使用ZipOutputStream打包下载,我下面是使用ant的jar打包的,因为他对应中文的支持比较好
大家也可以使用java.util.zip包里面的工具类打包,但是他对于中文不友好,很多都是乱码的(包括注释、文件名、打包名)
import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;
/**
* 打包下载
*
* @param response
*/
private void downFile(HttpServletResponse resp,
ArrayList filePathList) throws ServletException,
IOException {
// 头文件
resp.setContentType("APPLICATION/OCTET-STREAM");
resp.setHeader("Content-Disposition",
"attachment; filename=" + this.getZipFilename());
// 压缩文件
ZipOutputStream zos = new ZipOutputStream(resp.getOutputStream());
// --拼装
ArrayList fileList = new ArrayList();
for (int i = 0; i < filePathList.size(); i++) {
File file = new File(filePathList.get(i));
fileList.add(file);
}
File[] files = fileList.toArray(new File[fileList.size()]);
// --打包
zipFile(files, "", zos);
zos.flush();
zos.close();
}/**
* 打包文件
*
* @param subs
* 文件数组
* @param baseName
* 自定义名字
* @param zos
* 输出流
* @throws IOException
*/
private 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();
}
}
/**
* 压缩包名字
*
* @return
*/
private String getZipFilename() {
Date date = new Date();
String s = date.getTime() + ".zip";
return s;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。
java基础入门txt下载地址_java基础入门-ZipOutputStream打包下载相关推荐
- java基础入门-ZipOutputStream打包下载
今天跟大家聊聊使用ZipOutputStream打包下载,我下面是使用ant的jar打包的,因为他对应中文的支持比较好 大家也可以使用java.util.zip包里面的工具类打包,但是他对于中文不友好 ...
- 电脑android模拟器下载地址,原神电脑版怎么下载 安卓模拟器电脑版下载地址
标签: 电脑 最近在朋友圈非常流行的手游原神已经开放下载了,不过不少玩家都觉得手机上玩原神手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行原神这款手游呢?小编现在就推荐一款原神安卓模拟 ...
- 电脑android模拟器下载地址,菜鸡电脑版怎么下载 安卓模拟器电脑版下载地址
最近在朋友圈非常流行的手游菜鸡已经开放下载了,不过不少玩家都觉得手机上玩菜鸡手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行菜鸡这款手游呢?小编现在就推荐一款菜鸡安卓模拟器给大家!希望 ...
- formvalidator4.1.3下载,formvalidator4.1.3下载地址,formvalidator4.1.3最新下载地址
formvalidator4.1.3下载, formvalidator4.1.3下载地址, formvalidator4.1.3最新下载地址. 迅雷快传下载地址 : http://kuai.xunle ...
- formvalidator4.1.3下载,formvalidator4.1.3下载地址,formvalidator4.1.3最新下载地址【蕃薯耀分享】
formvalidator4.1.3下载, formvalidator4.1.3下载地址, formvalidator4.1.3最新下载地址. 迅雷快传下载地址: http://kuai.xunlei ...
- 《天下布魔Tenkafu MA》8月新包下载地址分享 1.4.1版本下载百度网盘
各位看官大大:想必在这款游戏的攻略介绍上,我猜你们阿最关心的莫过于就是<天下布魔Tenkafu MA>8月新包下载地址分享 1.4.1版本下载百度网盘的种种问题了!当然如果你正好希望看到这 ...
- 电脑android模拟器下载地址,真实手机电脑版怎么下载 安卓模拟器电脑版下载地址...
标签: 电脑 最近在朋友圈非常流行的手游真实手机已经开放下载了,不过不少玩家都觉得手机上玩真实手机手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行真实手机这款手游呢?小编现在就推荐一款 ...
- 电脑android模拟器下载地址,仙域奇缘电脑版怎么下载 安卓模拟器电脑版下载地址...
标签: 电脑 最近在朋友圈非常流行的手游仙域奇缘已经开放下载了,不过不少玩家都觉得手机上玩仙域奇缘手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行仙域奇缘这款手游呢?小编现在就推荐一款 ...
- 电脑android模拟器下载地址,史尼普电脑版怎么下载 安卓模拟器电脑版下载地址...
最近在朋友圈非常流行的手游史尼普已经开放下载了,不过不少玩家都觉得手机上玩史尼普手机屏幕太小,操作不方便,画面不够清晰炫酷.那么如何在电脑上运行史尼普这款手游呢?小编现在就推荐一款史尼普安卓模拟器给大 ...
最新文章
- 【c语言】蓝桥杯算法提高 输出三个整数的最大数
- C语言中结构体的位域(bit-fields)
- 第六章 深度学习(中下)
- 关于ORACLEOraDb11g_home1TNSListener服务启动后又停止问题的关键点
- websockets_使用Java WebSockets,JSR 356和JSON映射到POJO的
- BNU44583——Star Trek: First Contact——————【01背包】
- windows修改右键菜单显示内容(非所有菜单适用)
- android仿优酷菜单,Android编程实现仿优酷旋转菜单效果(附demo源码)
- Acrobat Pro DC 教程,如何发送电子签名文件?
- Struts2学习笔记(4)-ActionSupport类及Action接口详解
- 安装配置limesurvey
- linux串口编程(termios结构体说明)
- mysql 主键 sql语句_Mysql主键相关的sql语句集锦
- bertram_Bertram
- 关于arctanx的麦克劳林展开式推导
- eNSP之防火墙简单实验(一)
- 研发管理-质量与效率提升-混沌工程在携程的实践
- Windows 安装appium环境
- 全网最详细的微信小程序开发教程
- U盘文件乱码的解决方案