`
wei5201
  • 浏览: 185141 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

生成压缩文件(把文件加到压缩包中的简便方法)

阅读更多

import org.apache.tools.zip.ZipEntry;
import org.apache.tools.zip.ZipOutputStream;
	
public class ZipFile{

          /**
	 * 把files集合内的所有文件压缩成包test.zip
	 * @param files
	 * @throws IOException
	 */
	public void zipFiles(List<File> files) throws IOException{
		File tmp_File = new File("d:/zip/test.zip");
		if(!tmp_File.exists())
			tmp_File.createNewFile();
		FileInputStream fileStream=null;//输入文件的流
		ByteArrayOutputStream out=null;//把输入流转换成输出流
		
		FileOutputStream f_OutputStream = new FileOutputStream(tmp_File);
		//构造zip输出流,用来生成zip文件
        ZipOutputStream zipOutputStream = new ZipOutputStream(f_OutputStream);
        
		try{
        
		//循环即将被压缩的文件
        for(File file:files){
        	//转换输入流转换成输出流
        	out=new ByteArrayOutputStream();
        	fileStream=new FileInputStream(file);
        	byte[] b=new byte[1024];
        	while(fileStream.read(b)!=-1){
        		out.write(b);  //输入流转换到输出流中了
        	}
        	
        	//构造zip中某个文件
        	zipOutputStream.putNextEntry(new ZipEntry(file.getName()));
        	//把输出流写到zip中,生成实际文件
        	zipOutputStream.write(out.toByteArray());
        	//清空缓冲
        	zipOutputStream.flush();
        }
		}catch(Exception e){
			e.printStackTrace();
		}finally{
			if(fileStream!=null) fileStream.close();
			if(out!=null) out.close();
			if(zipOutputStream!=null) zipOutputStream.close();
		}

	}
}
分享到:
评论

相关推荐

    java压缩文件生成带密码的zip包,解压带密码的zip包的工具类

    压缩文件方法 该方法需要引用zip4j的jar文件 单个文件、多个文件压缩 /** * 使用给定密码压缩指定文件或文件夹到指定位置. * * dest可传最终压缩文件存放的绝对路径,也可以传存放目录,也可以传null或者""....

    RAR 是一个强力压缩工具,允许你管理和操作压缩文件。

    这个m的意思是把文件asdf.tr移动入压缩文件asdf.tr.rar中 6,创建自解压文件: winrar s asdf.tr.rar 在gui界面中,创建自解压文件是有个选项可以直接选择的。而在命令行中,是分为两个步 骤的,第一步是用压缩...

    rar压缩软件.rar

    如果在命令行或配置文件中指定开关 -ilog ,RAR 将会把处理压缩文件中遇到的错误 等写到日志文件中。读取开关 -ilog 描述获得更多信息。 固实压缩的文件列表 - rarfiles.lst ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~...

    Java多个文件根据URL下载后打包zip导出.zip

    Java根据Url把多个文件下载到指定的文件夹目录,然后再将文件夹目录打包成zip导出,包括子目录也可以打包,有个简单的导出html页面,点击导出按钮下载zip。

    中文简体压缩软件RAR 6.0

    如果在命令行或配置文件中指定开关 -ilog ,RAR 将会把处理压缩文件中遇到的错误 等写到日志文件中。在 Unix 中,这个文件名为 .rarlong,放在用户的 home 目录中。 在 Windows 中,它名为 rar.log,放在 rar....

    狂龙压缩文件密码找回工具V2.0

    狂龙压缩文件密码找回工具是一款非常简单好用的压缩文件密码找回软件,该软件可以帮助用户轻松的找回自己压缩文件的密码,并且使用起来也是... 找回记录中显示无法拉伸的问题。 3. 显示界面出现无数据状态报错问题。

    php实现对文件压缩简单的方法

    压缩一个文件 我们将一个文件生成一个压缩包。... //向压缩包中添加文件 $zip-&gt;close(); //关闭压缩包 上述代码将c:/wamp/www/log.txt文件压缩生成了test.zip,并保存在当前目录。 压缩多个文件 压缩多个文件,其

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Java从网络取得文件 1个目标文件 简单 Java从压缩包中提取文件 1个目标文件 简单 Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板 使用Java语言编写的一款...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Java从网络取得文件 1个目标文件 简单 Java从压缩包中提取文件 1个目标文件 简单 Java存储与读取对象 1个目标文件 如题 Java调色板面板源代码 1个目标文件 摘要:Java源码,窗体界面,调色板 使用Java语言编写的一款...

    压缩解压缩工具Bzip2源码

     4、和gzip的用法类似,最简单的打包压缩命令就是“bzip2 【要打包压缩的文件名】”,压缩后生成后缀名为".bz2"的压缩包。  5、这是一款轻量级的工具。 它可以运行在任何含有ANSI C 编译器的32位或者64位的主机上。

    C# 使用SharpZipLib生成压缩包的实例代码

    本文通过一个简单的小例子简述SharpZipLib压缩文件的常规用法,仅供学习分享使用,如有不足之处,还请指正。 什么是SharpZipLib ? SharpZipLib是一个C#的类库,主要用来解压缩Zip,GZip,BZip2,Tar等格式,是以托管...

    WinRAR_4.0.exe

    如果在命令行或配置文件中指定开关 -ilog ,RAR 将会把处理压缩文件中遇到的错误 等写到日志文件中。读取开关 -ilog 描述获得更多信息。 固实压缩的文件列表 - rarfiles.lst rarfiles.lst 包含一个用户定义...

    好压解压缩软件V4.0正式版

    好压压缩软件(HaoZip)使用非常简单方便,配置选项不多,仅在资源管理器中就可以完成你想做的所有工作,并且具有估计压缩功能,你可以在压缩文件之前得到用ZIP、7Z两种压缩工具各三种压缩方式下的大概压缩率;...

    快压 V2.9.3.5 官方版.exe

    分享文件很轻松,在右键菜单中选择“压缩并秒传分享给好友”这一选项,快压就会帮你完成压缩、上传的步骤,是不是比以前简单了许多呢。快压默认使用的网盘为盛大网盘,用户无法更改。 快压下载 快压kuaizip  2...

    java源码包---java 源码 大量 实例

    Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...

    图片及数据的压缩与解压缩

    压缩包里包含zlib.lib、zlib.h、zconf.h三个文件以及一个简单的使用说明,希望对那些想压缩内存中的数据的人有所帮助

    java源码包2

    Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...

    ZipFile.php(PHP压缩类,打包下载)

    PHPZip类,生成zip格式的压缩包,生成压缩并下载,简单的zip压缩类

    JAVA上百实例源码以及开源项目

    Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...

    java源码包3

    Java生成密钥、保存密钥的实例源码,通过本源码可以了解到Java如何产生单钥加密的密钥(myKey)、产生双钥的密钥对(keyPair)、如何保存公钥的字节数组、保存私钥到文件privateKey.dat、如何用Java对象序列化保存私钥,...

Global site tag (gtag.js) - Google Analytics