public class TestZip {
/**
* @param args
*/
public static void main(String[] args) {
String name = "a.txt";
String name2 = "b.txt";
File f1 = new File(name);
File f2 = new File(name2);
List<File> files = new ArrayList<File>();
files.add(f1);
files.add(f2);
File out = new File("x.zip");
ZipFiles(files, out);
String[] fnames = {"a.txt","b.txt"};
ZipFiles(fnames, "c.zip");
}
public static void ZipFiles(String[] ins, String out){
List<String> in = Arrays.asList(ins);
ZipFiles(in, out);
}
public static void ZipFiles(List<String> ins, String out){
List<File> inFiles = new ArrayList<File>();
File f = null;
for(String s: ins){
f = new File(s);
if(f.exists()){
inFiles.add(f);
}
f = null;
}
ZipFiles(inFiles, new File(out));
}
/**
* 将inFiles指定的文件, 按zip压缩为outFile
* @param inFiles
* @param outFile
*/
public static void ZipFiles(List<File> inFiles, File outFile) {
byte[] buff = new byte[4096];
int len = -1;
ZipOutputStream zipout = null;
try {
zipout = new ZipOutputStream(new FileOutputStream(outFile));
// zipout.setLevel(ZipOutputStream.STORED);
} catch (FileNotFoundException e1) {
e1.printStackTrace();
}
ZipEntry entry = null;
InputStream in = null;
for (File f : inFiles) {
try {
in = new FileInputStream(f);
entry = new ZipEntry(f.getName());
zipout.putNextEntry(entry);
while ((len = in.read(buff)) != -1) {
zipout.write(buff, 0, len);
}
zipout.flush();
} catch (Exception e) {
// TODO: handle exception
} finally {
if (in != null) {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
try {
zipout.closeEntry();
} catch (IOException e) {
e.printStackTrace();
}
}
}
try {
zipout.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
java打zip包用ant包解决中文乱码 java打zip包用ant包解决中文乱码 java打zip包用ant包解决中文乱码
本资源是用java代码将文件夹打成zip包,网上打zip包的代码会出现中文乱码和含空文件出现问题。本资源解决了这些问题,还加入一些合理化设计。 经过测试,基本没有问题。此资源比较适合项目使用。
包含了使用的jar包,以及一个Java类,实现了使用Java对多目录多层级的文件进行打包,以及对ZIP包进行解压缩的操作。
应用java来压缩需要打包的文件,在系统管理中将毛哥路径或者某个文件夹压缩成zip包
java解压zip, 可包含中文文件,附加ant.jar,绝对好用!!!
java打包文件夹为zip 或者打包文件 ,通过测试 zipcomcompressor 单个文件打包,循环打包速度会快非常多,要是打包文件夹,速度很慢。
Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...
java生成.zip包,解压缩.zip java生成.zip包,解压缩.zip
zip打包java实现方法,其中包括打包,解压
java 打包 目录 文件 zip java 打包 目录 文件 zip java 打包 目录 文件 zip
java 实现指定目录下的文件打包zip格式 并指定存放zip包
楼上兄弟太黑,特意找的源码,2分处理,完美解决Java加密解密zip文件
主要介绍了基于Java向zip压缩包追加文件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
因项目需求,需要在线生成world文档,并且需要批量生成world,那么就可以用zip打包所有world进行下载,这里提供的是一个简单的demo,如需了解在线生成文件,并打包到zip,可以问我
本文通过对数据压缩算法的简要介绍,然后以详细的示例演示了利用java.util.zip包实现数据的压缩与解压,并扩展到在网络传输方面如何应用java.util.zip包现数据压缩与解压
Java邮件jar包.zipJava邮件jar包.zipJava邮件jar包.zipJava邮件jar包.zipJava邮件jar包.zip
将文件打包成zip的java源码.将文件打包成zip的java源码.
antzip包,程序中获取文件和解压文件使用,自己重命名和写后缀,很方便,自己平时使用的,很好用。下载之后可以直接使用
java ZIP和RAR 压缩包 目录结构。 1.ant.jar 解决java自带zip不能读取中文压缩包的问题; 2.需要安装WINRAR软件,以便解压rar文件,然后获取对应目录; 3.实现在线预览压缩包目录结构的功能;