語言

Inflater.Inflate 方法

定義

多載

名稱 Description
Inflate(ByteBuffer)

將位元組解壓縮到指定的緩衝區。

Inflate(Byte[])

將位元組解壓縮到指定的緩衝區。

Inflate(Byte[], Int32, Int32)

將位元組解壓縮到指定的緩衝區。

Inflate(ByteBuffer)

將位元組解壓縮到指定的緩衝區。

[Android.Runtime.Register("inflate", "(Ljava/nio/ByteBuffer;)I", "GetInflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)]
public virtual int Inflate(Java.Nio.ByteBuffer? output);
[<Android.Runtime.Register("inflate", "(Ljava/nio/ByteBuffer;)I", "GetInflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)>]
abstract member Inflate : Java.Nio.ByteBuffer -> int
override this.Inflate : Java.Nio.ByteBuffer -> int

參數

output
ByteBuffer

為未壓縮資料的緩衝區

傳回

實際未壓縮位元組數

屬性

備註

將位元組解壓縮到指定的緩衝區。 回傳未壓縮的實際位元組數。 回傳值為 0 表示應呼叫 needsInput() 或 needsDictionary(),以判斷是否需要更多輸入資料或預設字典。 在後者情況下,可以使用 getAdler() 來取得所需字典的 Adler-32 值。

成功後,該 output 位元組緩衝區的位置將前進與操作產生的位元組相同,該位元組數等於此方法回傳的位元組數。 請注意,即使拋出 a output 時,緩衝區的位置DataFormatException仍會被推進。

剩餘的 #getRemaining() 位元組數會被消耗的輸入位元組數減少。 若 #setInput(ByteBuffer) 呼叫該方法提供輸入緩衝區,輸入緩衝區的位置會隨著消耗的位元組數提前。

這些位元組總數,以及 #getBytesRead() 總讀取位元組數和 #getBytesWritten() 總寫入值,即使拋出 a DataFormatException 也會繼續更新,以反映例外發生前消耗和產生的資料量。

新增11。

的 java.util.zip.Inflater.inflate(java.nio.ByteBuffer)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

Inflate(Byte[])

將位元組解壓縮到指定的緩衝區。

[Android.Runtime.Register("inflate", "([B)I", "GetInflate_arrayBHandler")]
public virtual int Inflate(byte[]? output);
[<Android.Runtime.Register("inflate", "([B)I", "GetInflate_arrayBHandler")>]
abstract member Inflate : byte[] -> int
override this.Inflate : byte[] -> int

參數

output
Byte[]

為未壓縮資料的緩衝區

傳回

實際未壓縮位元組數

屬性

例外狀況

若底層串流損壞或未使用壓縮 Deflater。

備註

將位元組解壓縮到指定的緩衝區。 回傳未壓縮的實際位元組數。 回傳值為 0 表示應呼叫 needsInput() 或 needsDictionary(),以判斷是否需要更多輸入資料或預設字典。 在後者情況下,可以使用 getAdler() 來取得所需字典的 Adler-32 值。

剩餘的 #getRemaining() 位元組數會被消耗的輸入位元組數減少。 若 #setInput(ByteBuffer) 呼叫該方法提供輸入緩衝區,輸入緩衝區的位置會隨著消耗的位元組數提前。

這些位元組總數,以及 #getBytesRead() 總讀取位元組數和 #getBytesWritten() 總寫入值,即使拋出 a DataFormatException 也會繼續更新,以反映例外發生前消耗和產生的資料量。

的 java.util.zip.Inflater.inflate(byte[])Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於

Inflate(Byte[], Int32, Int32)

將位元組解壓縮到指定的緩衝區。

[Android.Runtime.Register("inflate", "([BII)I", "GetInflate_arrayBIIHandler")]
public virtual int Inflate(byte[]? output, int off, int len);
[<Android.Runtime.Register("inflate", "([BII)I", "GetInflate_arrayBIIHandler")>]
abstract member Inflate : byte[] * int * int -> int
override this.Inflate : byte[] * int * int -> int

參數

output
Byte[]

為未壓縮資料的緩衝區

off
Int32

資料的起始偏移量

len
Int32

最大未壓縮位元組數

傳回

實際未壓縮位元組數

屬性

例外狀況

若底層串流損壞或未使用壓縮 Deflater。

備註

將位元組解壓縮到指定的緩衝區。 回傳未壓縮的實際位元組數。 回傳值為 0 表示應呼叫 needsInput() 或 needsDictionary(),以判斷是否需要更多輸入資料或預設字典。 在後者情況下,可以使用 getAdler() 來取得所需字典的 Adler-32 值。

若呼叫該 #setInput(ByteBuffer) 方法提供輸入緩衝區,輸入緩衝區的位置會依據此操作所消耗的位元組數前進,即使拋出 a DataFormatException 也相同。

剩餘的 #getRemaining() 位元組數會被消耗的輸入位元組數減少。 若 #setInput(ByteBuffer) 呼叫該方法提供輸入緩衝區,輸入緩衝區的位置會隨著消耗的位元組數提前。

這些位元組總數,以及 #getBytesRead() 總讀取位元組數和 #getBytesWritten() 總寫入值,即使拋出 a DataFormatException 也會繼續更新,以反映例外發生前消耗和產生的資料量。

的 java.util.zip.Inflater.inflate(byte[], int, int)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於