当前位置 类层次(JDK) 所有类 (JDK) 所有域和方法 (JDK)

类 java.util.zip.Deflater

java.lang.Object
   |
   +----java.util.zip.Deflater

public class Deflater
extends Object

该类使用著名的 ZLIB 压缩程序库为通常的解压缩提供支持。 ZLIB 压缩程序库最初是作为 PNG 图形标准的部件开发出来的,并且不受专利的保护。详细描述见 1950、1951 和 1952 的 RFCs 。

参见:
Inflater

变量索引

BEST_COMPRESSION
最佳压缩的压缩级别。
BEST_SPEED
最快压缩的压缩级别。
DEFAULT_COMPRESSION
缺省的压缩级别。
DEFAULT_STRATEGY
缺省的压缩策略。
DEFLATED
deflate 算法(当前唯一支持的算法)的压缩方法。
FILTERED
适用于主要包含小值的且在某种程度上随意分布的数据的压缩策略。
HUFFMAN_ONLY
仅适用于 Huffman 编码的压缩策略。
NO_COMPRESSION
无压缩的压缩级别。

构造子索引

Deflater()
用缺省的压缩级别创建一个新的压缩器。
Deflater(int)
使用缺省的压缩级别创建一个新的压缩器。
Deflater(int, boolean)
使用缺省的压缩级别创建一个新的压缩器。

方法索引

deflate(byte[])
用压缩数据填充指定的缓冲区。
deflate(byte[], int, int)
用压缩数据填充指定的缓冲区。
end()
废除未处理的输入并释放其内部的数据。
finalize()
当收集无用信息时释放压缩器。
finish()
该方法被调用时,指示了压缩应当以输入缓冲区的当前内容结束。
finished()
如果已到达压缩数据输出流的结尾返回 true 。
getAdler()
返回未压缩数据的 ADLER-32 值。
getTotalIn()
返回到目前为止输入的字节总数。
getTotalOut()
返回到目前为止输出的字节总数。
needsInput()
如果输入数据缓冲区为空返回 true ,且应调用 setInput() 以提供更多的输入。
reset()
复位 deflater 以使新的输入数据集可以被处理。
setDictionary(byte[])
为压缩预置词典。
setDictionary(byte[], int, int)
为压缩预置词典。
setInput(byte[])
为压缩设置输入数据。
setInput(byte[], int, int)
为压缩设置输入数据。
setLevel(int)
把当前的压缩级别设置为指定的值。
setStrategy(int)
把压缩策略设置为指定的值。

变量

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

NO_COMPRESSION
 public static final int NO_COMPRESSION
无压缩的压缩级别。

BEST_SPEED
 public static final int BEST_SPEED
最快压缩的压缩级别。

BEST_COMPRESSION
 public static final int BEST_COMPRESSION
最佳压缩的压缩级别。

DEFAULT_COMPRESSION
 public static final int DEFAULT_COMPRESSION
缺省的压缩级别。

FILTERED
 public static final int FILTERED
最适用于主要包含小值的在某种程度上随意分布的数据的压缩策略。强制使用更多的 Huffman 编码和较少的字符串匹配。

HUFFMAN_ONLY
 public static final int HUFFMAN_ONLY
仅适用于 Huffman 编码的压缩策略。

DEFAULT_STRATEGY
 public static final int DEFAULT_STRATEGY
缺省的压缩策略。


构造子

Deflater
 public Deflater(int level,
                 boolean nowrap)
使用缺省的压缩级别创建一个新的压缩器。 如果 'nowrap' 为 true ,则不使用 ZLIB 首部和校验和域以支持用在 GZIP 和 PKZIP 中的压缩格式。

参数:
level - 压缩级别(0-9)
nowrap - 如果为 true ,则使用 GZIP 兼容的压缩。
Deflater
 public Deflater(int level)
使用缺省的压缩级别创建一个新的压缩器。 压缩的数据将以 ZLIB 格式生成。

参数:
level - 压缩级别(0-9)
Deflater
 public Deflater()
用缺省的压缩级别创建一个新的压缩器。 压缩的数据将以 ZLIB 格式生成。


方法

setInput
 public synchronized void setInput(byte b[],
                   int off,
                   int len)
为压缩设置输入数据。该方法应在 needsInput() 返回 true,即指示需要更多的输入数据时被调用。

参数:
b - 输入数据字节
off - 数据的初始偏移量
len - 数据的长度
参见:
needsInput
setInput
 public void setInput(byte b[])
为压缩设置输入数据。该方法应在 needsInput() 返回 true,即指示需要更多的输入数据时被调用。

参数:
b - 输入数据字节
参见:
needsInput
setDictionary
 public native synchronized void setDictionary(byte b[],
                   int off,
                   int len)
为压缩预置词典。 预置词典在历史缓冲区可预定时使用。当数据用 Inflater.inflate() 解压缩时,调用 Inflater.getAdler() 来获取解压缩需要的词典的 Adler-32 值。

参数:
b - 词典数据字节
off - 数据的初始偏移量
len - 数据的长度
参见:
inflate, getAdler
setDictionary
 public void setDictionary(byte b[])
为压缩预置词典。 预置词典在历史缓冲区可预定时使用。当数据用 Inflater.inflate() 解压缩时,调用 Inflater.getAdler() 来获取解压缩需要的词典的 Adler-32 值。

参数:
b - 词典数据字节
参见:
inflate, getAdler
setStrategy
 public synchronized void setStrategy(int strategy)
把压缩策略设置为指定的值。

参数:
strategy - 新的压缩策略
抛出: IllegalArgumentException
如果压缩策略无效
setLevel
 public synchronized void setLevel(int Level)
把当前的压缩级别设置为指定的值。

参数:
level - 新的压缩级别(0-9)
抛出: IllegalArgumentException
如果压缩级别无效
needsInput
 public boolean needsInput()
如果输入数据缓冲区为空返回 true ,且应调用 setInput() 以提供更多的输入。

finish
 public synchronized void finish()
当该方法被调用时,指示了压缩应当以输入缓冲区的当前内容结尾。

finished
 public synchronized boolean finished()
如果已到达压缩数据输出流的结尾返回 true 。

deflate
 public native synchronized int deflate(byte b[],
                   int off,
                   int len)
用压缩数据填充指定的缓冲区。 返回压缩数据的实际字节数。返回值 0 指示应调用 needsInput() 以决定是否需要更多的输入。

参数:
b - 压缩数据的缓冲区
off - 数据的初始偏移量
len - 压缩数据的最大字节数
返回值:
实际压缩的字节数
deflate
 public int deflate(byte b[])
用压缩数据填充指定的缓冲区。 返回压缩数据的实际字节数。返回值 0 指示应调用 needsInput() 以决定是否需要更多的输入。

参数:
b - 压缩数据的缓冲区
返回值:
实际压缩的字节数
getAdler
 public native synchronized int getAdler()
返回未压缩数据的 ADLER-32 值。

getTotalIn
 public native synchronized int getTotalIn()
返回到目前为止输入的字节总数。

getTotalOut
 public native synchronized int getTotalOut()
返回到目前为止输出的字节总数。

reset
 public native synchronized void reset()
复位 deflater 以使新的输入数据集可以被处理。 保持当前的压缩级别和策略设置。

end
 public native synchronized void end()
废除未处理的输入并释放内部的数据。

finalize
 protected void finalize()
当收集无用信息时释放压缩器。

覆盖:
Object 中的 finalize

当前位置 类层次(JDK) 所有类 (JDK) 所有域和方法 (JDK)