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 - 壓縮算法的壓縮方法(目前唯一支持的壓縮方法)。
  • 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()

重置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