java io中提供了丰富的文件操作工具,其中对压缩文件的支持也很方便,下面说明对zip文件做多文件读写的用法:
public class file2 {
public static void main(String[] args) throws Exception {
FileOutputStream f = new FileOutputStream("test.zip");
CheckedOutputStream csum = new CheckedOutputStream(f, new Adler32());
ZipOutputStream zos = new ZipOutputStream(csum);
BufferedOutputStream out = new BufferedOutputStream(zos);
zos.setComment("A testing of java zip");
String[] s = { "1.txt", "2.txt" };
for (String ss : s) {
System.out.println("wrirting file:" + ss);
BufferedReader in = new BufferedReader(new FileReader(ss));
zos.putNextEntry(new ZipEntry(ss));
int c;
while ((c = in.read()) != -1) {
out.write(c);
}
in.close();
out.flush();
}
out.close();
System.out.println(csum.getChecksum().getValue());
System.out.println("reading……");
FileInputStream f1 = new FileInputStream("test.zip");
CheckedInputStream csum1 = new CheckedInputStream(f1, new Adler32());
ZipInputStream in2 = new ZipInputStream(csum1);
BufferedInputStream bis = new BufferedInputStream(in2);
ZipEntry ze;
while ((ze = in2.getNextEntry()) != null) {
System.out.println(ze);
int x;
while ((x = bis.read()) != -1) {
System.out.write(x);
}
System.out.println();
}
System.out.println(csum1.getChecksum().getValue());
bis.close();
ZipFile zf = new ZipFile("test.zip");
Enumeration e = zf.entries();
while (e.hasMoreElements()) {
ZipEntry ze2 = (ZipEntry) e.nextElement();
System.out.println(ze2);
}
}
}
对于每一个要加入压缩档案的文件,都必须调用putNextEntry(),并将其传递给一个ZipEntry对象,其中java支持Adler32和CRC32两种校验和的类型。解压缩文件利用ZipFile对象读取文件,该对象有一个entries()方法,返回一个枚举类型,就是所包含的文件!
分享到:
相关推荐
JAVA操作压缩文件的包。JAVA操作压缩文件的包。JAVA操作压缩文件的包。JAVA操作压缩文件的包。
在Java编程语言中,处理压缩文件(如ZIP或GZ格式)是一项常见的任务。本示例将探讨如何使用Java API来实现文件的压缩和解压缩功能。提供的压缩包包含三个文件:ant.jar(一个用于构建工具的库)、ZipFileList.java...
在Java编程语言中,文件的压缩与解压缩是常见的数据处理操作,特别是在数据传输、存储优化和备份场景中。本实践项目围绕这个主题展开,包括源代码和相关的论文,为学习者提供了深入理解和应用Java压缩库的机会。以下...
虽然Ant不直接用于解压缩文件,但可以与Java代码结合使用,例如通过Ant任务来调用`CompressFileUtils`进行解压缩操作。Ant提供了一系列的任务,如`unzip`,可以直接在构建脚本中用于解压缩文件。 至于标签“文件解...
Java文件分割压缩是一种常见的操作,尤其在处理大数据或者网络传输时非常有用,因为单个大文件可能会导致处理效率低或传输困难。以下是一些相关的Java编程知识点: 1. **文件I/O操作**:在Java中,`java.io`包提供...
要在Java中处理RAR格式的压缩文件,由于Java标准库不直接支持RAR格式,我们需要引入第三方库。一个常用的库是`com.igormaznitsa:nativesharp-jni`,它封装了WinRAR的API,使得Java可以调用WinRAR的功能。安装该库后...
zipEntry.setComment("压缩文件"); // 可以添加注释,同样需要指定字符集 zos.putNextEntry(zipEntry); try (BufferedInputStream bis = new BufferedInputStream(new FileInputStream(file))) { byte[] buffer...
Java在Linux环境下对GZ压缩文件的处理是一个常见的任务,特别是在处理大文件或者网络传输时。GZ是一种常用的文件压缩格式,它利用了gzip程序进行压缩,而在Java中,我们可以使用`java.util.zip`包中的类来实现对GZ...
Java操作Zip文件主要涉及到对文件和目录的压缩与解压缩,以及在必要时对压缩文件进行加密处理。这里我们重点讨论使用两个库:`zip4j`和`Apache Ant`来实现这些功能。 1. **zip4j库**:`zip4j-1.3.2.jar`是一个用...
而Xuggler则是一个开源的Java库,它允许开发者操作音视频文件的元数据,进行剪辑、转码等操作。 在"java实现视频压缩"这个项目中,可能会包含以下步骤: 1. **读取视频文件**:使用Java的FileInputStream或相关的...
在Java编程环境中,批量文件打包成压缩文件是一个常见的需求,特别是在软件发布或数据传输时。Ant,一个由Apache基金会开发的构建工具,是实现这一功能的强大助手。本篇将详细介绍如何利用Java和Ant来实现批量文件的...
//文件数据(待压缩文件) JButton jbAdd; //增加文件按钮 JButton jbDelete; //删除文件按钮 JButton jbZip; //压缩按钮 JTextField target; //目标文件文本域 public ZipDemo(){ super("用ZIP...
在Java编程语言中,压缩文件是一项常见的任务,用于减少文件的存储空间,提高传输效率。HUFFMAN编码是一种数据压缩算法,它基于字符频率构建一棵最优的二叉树来进行编码,广泛应用于文本压缩。本节将详细介绍如何在...
本实践主要关注如何使用Java来处理ZIP格式的压缩文件,以下将详细介绍相关知识点。 1. **Java档案API(Java Archive API, JAR)** Java标准库提供了一个强大的API来处理各种类型的档案文件,包括ZIP格式。`java....
这些工具不仅能够压缩文件,还能进行变量和函数名的混淆,进一步减小文件大小,但混淆可能会对代码可读性和调试带来困难,因此在生产环境使用时需谨慎。 对于JavaScript的压缩,Closure Compiler和YUI Compressor会...
在Java编程中,处理压缩文件,如ZIP格式的文件,是一项常见的任务。本文将深入探讨如何使用Java来获取ZIP文件的名称以及如何高效地解压缩这些文件,特别是通过多线程来提高性能。 首先,我们需要引入Java的内置库`...
它通常用于单个文件的压缩,支持在线压缩和解压缩,且文件头包含有关压缩文件的信息,如时间戳和文件类型。 2. Zip:Zip是另一种流行的压缩格式,它可以将多个文件和目录打包到一个单一的归档文件中。Zip使用多种...
Java文件压缩源码是Java开发中常见的需求,它允许开发者将多个文件或目录打包成一个压缩文件,方便存储和传输。在本例中,我们提到的实现方式是通过使用Apache Ant库中的`org.apache.tools.ant.taskdefs.Zip`类。...
在Java编程语言中,处理图片压缩是一个常见的任务,特别是在网页开发、存储优化或者移动应用中。这个主题主要涉及如何利用Java来减少图片文件的大小,包括静态图片(如JPEG、PNG)以及动态图片(如GIF)。下面我们将...