`

[java][io][ZIP]使用GZIP进行压缩和解压缩

阅读更多
Checksum 接口:被类Adler32和CRC32实现的接口
Adler32 :使用Alder32算法来计算Checksum数目,快一些
CRC32 :使用CRC32算法来计算Checksum数目,慢一些,但更准确

CheckedInputStream :InputStream派生类,可得到输入流的校验和Checksum,用于校验数据的完整性
CheckedOutputStream :OutputStream派生类,可得到输出流的校验和Checksum, 用于校验数据的完整性

DeflaterOutputStream :压缩类的基类。
ZipOutputStream :DeflaterOutputStream的一个子类,把数据压缩成Zip文件格式。
GZIPOutputStream :DeflaterOutputStream的一个子类,把数据压缩成GZip文件格式

InflaterInputStream :解压缩类的基类
ZipInputStream :InflaterInputStream的一个子类,能解压缩Zip格式的数据
GZIPInputStream :InflaterInputStream的一个子类,能解压缩Zip格式的数据

ZipEntry 类:表示 ZIP 文件条目
ZipFile 类:此类用于从 ZIP 文件读取条目




import java.io.BufferedOutputStream;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.FileReader;
import java.io.InputStreamReader;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
/**
 * 
 * 使用GZIP进行压缩和解压缩.
 *
 */
public class GZIPcompress {

	
	public static void main(String[] args) throws Exception {
		if(args.length == 0){
			System.out.println(
				"Usage: \nGZIPcompress file\n" + 
				"\nUses GZIP compression to compress " + 
				"the file to test.gz");
			System.exit(1);
		}
		//进行压缩
		BufferedReader br = new BufferedReader(new FileReader(args[0]));
		BufferedOutputStream out = new BufferedOutputStream(new GZIPOutputStream(new FileOutputStream("d:\\test.gz")));
		System.out.println("Writing file: ");
		int c ;
		while((c = br.read()) != -1){
			out.write(c);
		}
		br.close();
		out.close();
		
		//进行解压
		System.out.println("Reading file: ");
		BufferedReader reader = new BufferedReader(new InputStreamReader(new GZIPInputStream(new FileInputStream("d:\\test.gz"))));
		String s;
		while((s = reader.readLine()) != null){
			System.out.println(s);
		}
		reader.close();
		
	}

}



分享到:
评论

相关推荐

    Zip和Gzip解压缩

    本文将深入探讨C#语言中用于Zip和Gzip压缩的相关知识,以及如何在Visual Studio 2008环境下进行解压缩操作。 首先,让我们理解Zip和Gzip两种压缩格式。Zip是一种广泛使用的文件压缩格式,它能将多个文件或目录打包...

    Java用GZIP压缩解压文件源码

    在本文中,我们将深入探讨如何使用Java实现GZIP压缩和解压缩文件的源码。 首先,我们需要引入Java的`java.util.zip`包,这个包包含了处理GZIP和其他压缩格式所需的类。在Java中,`GZIPOutputStream`和`...

    JAVA文件压缩与解压缩实践(源代码+论文)

    1. **Java压缩库**:Java标准库提供了`java.util.zip`包,它包含了多种压缩和解压缩的类,如`ZipOutputStream`、`ZipInputStream`、`GZIPOutputStream`和`GZIPInputStream`,用于处理ZIP和GZIP格式的文件。...

    用java.util.zip包现数据压缩与解压

    通过本文的学习,您应该已经了解了如何使用 Java 中的 `java.util.zip` 包来进行数据的压缩与解压操作。无论是对于 ZIP 文件还是 GZIP 文件,该包都提供了强大的支持。在实际开发过程中,合理利用这些工具可以帮助您...

    使用Huffman对文件进行压缩和解压缩

    在Java中,可以使用`java.io`和`java.nio`包下的类进行文件操作,使用`java.util`包下的数据结构辅助实现Huffman算法。 实现Huffman编码时需要注意,由于其编码长度不固定,解压缩时必须有编码表作为参考,因此压缩...

    基于Java的用GZIP压缩解压文件.zip

    首先,我们要了解Java中的`java.util.zip.GZIPOutputStream`和`java.util.zip.GZIPInputStream`类,这两个类是Java标准库提供的用于GZIP压缩和解压缩的核心工具。`GZIPOutputStream`用于写入压缩数据,而`...

    Java用GZIP压缩解压文件.zip

    本教程将深入探讨如何在Java中利用GZIP进行文件的压缩和解压缩操作。 首先,让我们了解Java中的GZIPOutputStream和GZIPInputStream这两个核心类。GZIPOutputStream是用于压缩数据的流,它继承自...

    Java用GZIP压缩解压文件.7z

    本篇文章将深入探讨如何在Java中使用GZIP进行文件的压缩和解压缩操作。 首先,我们要导入相关的Java.IO和Java.util.zip库,它们提供了对GZIP文件格式的支持: ```java import java.io.*; import java.util.zip.*; ...

    Java用GZIP压缩解压文件

    本篇文章将深入探讨如何在Java中使用GZIP进行文件的压缩与解压缩操作。 首先,我们需要了解Java中的`java.util.zip`包,这个包提供了对ZIP和GZIP格式的支持。在GZIP操作中,我们主要会用到`GZIPOutputStream`和`...

    java源码:Java用GZIP压缩解压文件.rar

    在实际项目中,当需要处理大量数据,如日志文件或网络传输时,使用Java进行GZIP压缩和解压缩可以显著减少数据量,提高效率。 在文件名称列表`codefans.net`中,可能包含的是一个网站URL或者是一个文件名,如果这是...

    java_gzip.rar_Compression_gzip_j2me gz_java压缩

    GZIP是一种广泛使用的数据压缩格式,其在Java中的实现基于Java IO和Java util.zip库。本篇将详细介绍Java中如何利用GZIP进行数据压缩和解压缩,并结合`java_gzip.txt`和`www.pudn.com.txt`这两个文件来展示实际操作...

    Java用GZIP压缩解压文件.rar

    总结,Java通过`java.util.zip`包提供的GZIPOutputStream和GZIPInputStream类,使得开发者能够方便地对文件进行GZIP压缩和解压缩。在实际项目中,根据具体需求选择合适的压缩和解压缩策略,可以有效提高存储和网络...

    java_gzip.rar_java GZ_java gzip

    下面我们将深入探讨如何使用Java进行GZIP压缩和解压缩,以及相关的知识点。 首先,我们来看GZIP压缩。在Java中,`java.util.zip.GZIPOutputStream`类是用于压缩数据的主要工具。要压缩一个文件,我们需要创建一个`...

    java压缩和解压缩文件

    总的来说,Java中的压缩和解压缩功能非常强大且易于使用,无论是处理ZIP格式还是GZIP格式,都能满足大多数日常需求。在开发过程中,我们可以根据具体需求选择合适的工具,如需要处理单个文件时可以选择GZIP,而需要...

    java_io.zip_zip

    - 对于需要GZIP压缩的情况,Java还提供了`GZIPOutputStream`和`GZIPInputStream`,它们分别用于GZIP格式的压缩和解压缩。 6. **NIO与ZIP**: - Java NIO(New IO)提供了更高效、非阻塞的IO操作方式。虽然`java....

    j2me zip 压缩及解压,不支持gzip格式

    例如,可以使用Java SE的`java.util.zip.GZIPOutputStream`和`java.util.zip.GZIPInputStream`来压缩和解压缩GZIP文件。 总的来说,虽然J2ME不直接支持gzip格式,但通过合理地利用现有API和外部工具,开发者仍然...

    C#使用GZIP解压缩

    GZIP是一种广泛使用的数据压缩格式,它遵循GNU ZIP格式标准。本文将详细讲解如何在C#环境中使用GZIP库来实现文件的解压缩,特别针对使用Visual Studio 2005开发环境的情况。 首先,我们要了解GZIP的基本原理。GZIP...

    Java gzip压缩源码 web程序必备

    在Java中,我们可以使用java.util.zip.GZIPOutputStream和GZIPInputStream类来实现Gzip的压缩和解压缩操作。 接下来,我们将讨论如何在Web程序中使用Gzip压缩。在Web服务器上启用Gzip压缩通常有两种方式:配置...

    java毕业设计-JAVA文件压缩与解压缩实践(源代码+论文).zip

    2. **Zip与GZip格式**:Java提供了内置的类来支持Zip和GZip这两种常见的压缩格式。ZipOutputStream和ZipInputStream用于处理Zip格式,而GZIPOutputStream和GZIPInputStream则对应于GZip格式。理解这两种格式的区别和...

Global site tag (gtag.js) - Google Analytics