Deflater
介绍 (Introduction)
java.util.zip.Deflater类使用流行的ZLIB压缩库为通用压缩提供支持。 ZLIB压缩库最初是作为PNG图形标准的一部分开发的,不受专利保护。 它在java.util.zip包描述的规范中有详细描述。
类声明
以下是java.util.zip.Deflater类的声明 -
public class Deflater
extends Object
字段 (Fields)
以下是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 - 压缩刷新模式,用于清除所有挂起的输出并重置deflater。
static int HUFFMAN_ONLY - 仅用于霍夫曼编码的压缩策略。
static int NO_COMPRESSION - 无压缩的压缩级别。
static int NO_FLUSH - 用于实现最佳压缩结果的压缩刷新模式。
static int SYNC_FLUSH - 用于清除所有挂起输出的压缩刷新模式; 可能会降低某些压缩算法的压缩率。
构造函数 (Constructors)
Sr.No. | 构造函数和描述 |
---|---|
1 | Deflater() 使用默认压缩级别创建新压缩器。 |
2 | Deflater(int level) 使用指定的压缩级别创建新的压缩器。 |
3 | Deflater(int level, boolean nowrap) 使用指定的压缩级别创建新的压缩器。 |
类方法
Sr.No. | 方法和描述 |
---|---|
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() 重置deflater,以便处理一组新的输入数据。 |
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