java.util.zip - Deflater 类



介绍

java.util.zip.Deflater 类使用流行的 ZLIB 压缩库提供对通用压缩的支持。ZLIB 压缩库最初是作为 PNG 图像标准的一部分开发的,不受专利保护。在 java.util.zip 包说明中的规范中对其进行了完整描述。

类声明

以下是java.util.zip.Deflater 类的声明:

public class Deflater
   extends Object

字段

以下是java.util.zip.Deflater 类的字段:

  • static int BEST_COMPRESSION − 最佳压缩的压缩级别。

  • static int BEST_SPEED − 最快压缩的压缩级别。

  • static int DEFAULT_COMPRESSION − 默认压缩级别。

  • static int DEFAULT_STRATEGY − 默认压缩策略。

  • static int DEFLATED − deflate 算法的压缩方法(当前唯一支持的方法)。

  • static int FILTERED − 最适合用于主要由具有某种随机分布的小值组成的数据的压缩策略。

  • static int FULL_FLUSH − 用于刷新所有待处理输出并重置解压缩器的压缩刷新模式。

  • static int HUFFMAN_ONLY − 仅用于霍夫曼编码的压缩策略。

  • static int NO_COMPRESSION − 无压缩的压缩级别。

  • static int NO_FLUSH − 用于实现最佳压缩结果的压缩刷新模式。

  • static int SYNC_FLUSH − 用于刷新所有待处理输出的压缩刷新模式;可能会降低某些压缩算法的压缩率。

构造函数

序号 构造函数和说明
1

Deflater()

使用默认压缩级别创建一个新的压缩器。

2

Deflater(int level)

使用指定的压缩级别创建一个新的压缩器。

3

Deflater(int level, boolean nowrap)

使用指定的压缩级别创建一个新的压缩器。

类方法

序号 方法和说明
1 int deflate(byte[] b)

压缩输入数据并将压缩数据填充到指定的缓冲区中。

2 int deflate(byte[] b, int off, int len)

压缩输入数据并将压缩数据填充到指定的缓冲区中。

3 int deflate(byte[] b, int off, int len, int flush)

压缩输入数据并将压缩数据填充到指定的缓冲区中。

4 void end()

关闭压缩器并丢弃任何未处理的输入。

5 void finish()

调用时,表示压缩应以输入缓冲区的当前内容结束。

6 boolean finished()

如果已到达压缩数据输出流的末尾,则返回 true。

7 int getAdler()

返回未压缩数据的 ADLER-32 值。

8 long getBytesRead()

返回迄今为止输入的未压缩字节总数。

9 long getBytesWritten()

返回迄今为止输出的压缩字节总数。

10 int getTotalIn()

返回迄今为止输入的未压缩字节总数。

11 int getTotalOut()

返回迄今为止输出的压缩字节总数。

12 boolean needsInput()

如果输入数据缓冲区为空并且应该调用 setInput() 以提供更多输入,则返回 true。

13 void reset()

重置解压缩器,以便可以处理新的输入数据。

14 void setDictionary(byte[] b)

设置压缩的预设字典。

15 void setDictionary(byte[] b, int off, int len)

设置压缩的预设字典。

16 void setInput(byte[] b)

设置压缩的输入数据。

17 void setInput(byte[] b, int off, int len)

设置压缩的输入数据。

18 void setLevel(int level)

将当前压缩级别设置为指定值。

19 void setStrategy(int strategy)

将压缩策略设置为指定值。

继承的方法

此类继承自以下类的方法:

  • java.lang.Object
广告