文件夹目录打包压缩下载
来源:互联网 发布:php 判断域名 编辑:程序博客网 时间:2024/03/29 02:13
/**
* 压缩整个文件夹中的所有文件,生成指定名称的zip压缩包
* @param filepath 文件所在目录
* @param zippath 压缩后zip文件名称
* @param dirFlag zip文件中第一层是否包含一级目录,true包含;false没有
* 2015年6月9日
*/
“`
public static void zipMultiFile(String filepath ,String zippath, boolean dirFlag) { try { File file = new File(filepath);// 要被压缩的文件夹 File zipFile = new File(zippath); ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(zipFile)); if(file.isDirectory()){ File[] files = file.listFiles(); for(File fileSec:files){ if(dirFlag){ recursionZip(zipOut, fileSec, file.getName() + File.separator); }else{ recursionZip(zipOut, fileSec, ""); } } } zipOut.close(); } catch (Exception e) { e.printStackTrace(); }}private static void recursionZip(ZipOutputStream zipOut, File file, String baseDir) throws Exception{ if(file.isDirectory()){ File[] files = file.listFiles(); for(File fileSec:files){ recursionZip(zipOut, fileSec, baseDir + file.getName() + File.separator); } }else{ byte[] buf = new byte[1024]; InputStream input = new FileInputStream(file); zipOut.putNextEntry(new ZipEntry(baseDir + file.getName())); int len; while((len = input.read(buf)) != -1){ zipOut.write(buf, 0, len); } input.close(); }}
“` 来源:http://www.codingyun.com/article/81.html#
遇到的问题:
FileOutputStream fos = new FileOutputStream(zipFile);
zipFile这个参数是一个压缩文件路径,我做的时候,放入文件夹路径,多次报错。原因是Stream是操作字节流。
下面是下载方法,参数是 文件,文件类型
/**
* @param file 文件 * @param fileType 文件类型 * 2015年6月9日 */
1 0
- 文件夹目录打包压缩下载
- c#如何把文件夹压缩打包然后下载
- c#如何把文件夹压缩打包然后下载
- linux文件夹打包压缩
- tar 打包压缩目录
- tar 打包压缩目录
- tar 打包压缩目录
- tar 打包压缩目录
- python程序-文件夹压缩打包
- Linux 压缩某个文件夹(文件夹打包)
- 读取两个压缩包,比较文件夹及文件内容的不同之处并添加到另一个文件夹打包下载
- JAVA ZIP压缩打包下载
- zip压缩打包文件下载
- C# 压缩打包文件下载
- 一步步教你批量压缩打包文件夹
- Linux下 文件夹 压缩 解压缩 打包
- 【Linux】Linux 如何打包压缩文件夹
- Linux 压缩(打包)文件夹 tar/zip
- python发送邮件,亲测可用。
- CONFIG_STRICT_DEVMEM和CONFIG_IO_STRICT_DEVMEM
- Xcode8升级之后遇到的问题
- 2015: [Usaco2010 Feb]Chocolate Giving
- SQL Server Express2008设置远程登录
- 文件夹目录打包压缩下载
- Spring JMS
- iOS 定位原理和使用建议
- Spring OXM
- 【DoTween】Unity插件DOTween教程(零)基础篇
- tomcat无法启动
- ShardedJedis部分源码 redis分布式直连同步方式
- 系统集成项目管理工程师—案例分析重点记忆内容
- iOS容易造成循环引用的三种场景,(循环引用),内存泄漏