Deflater.Deflate メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
| 名前 | 説明 |
|---|---|
| Deflate(ByteBuffer) |
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 |
| Deflate(Byte[]) |
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 |
| Deflate(ByteBuffer, Int32) |
入力データを圧縮し、指定したバッファーに圧縮データを格納します。 |
| Deflate(Byte[], Int32, Int32) |
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 |
| Deflate(Byte[], Int32, Int32, Int32) |
入力データを圧縮し、指定したバッファーに圧縮データを格納します。 |
Deflate(ByteBuffer)
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。
[Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;)I", "GetDeflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)]
public virtual int Deflate(Java.Nio.ByteBuffer? output);
[<Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;)I", "GetDeflate_Ljava_nio_ByteBuffer_Handler", ApiSince=35)>]
abstract member Deflate : Java.Nio.ByteBuffer -> int
override this.Deflate : Java.Nio.ByteBuffer -> int
パラメーター
- output
- ByteBuffer
圧縮データのバッファー
返品
出力バッファーに書き込まれた圧縮データの実際のバイト数
- 属性
注釈
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 圧縮されたデータの実際のバイト数を返します。 戻り値 0 は、より多くの入力データが必要かどうかを判断するために #needsInput() needsInput を呼び出す必要があることを示します。
このメソッドは、圧縮フラッシュ モードとして #NO_FLUSH を使用します。 フォームのこのメソッドの呼び出し deflater.deflate(output) 、 deflater.deflate(output, Deflater.NO_FLUSH)の呼び出しと同じ結果が生成されます。
11 に追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
Deflate(Byte[])
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。
[Android.Runtime.Register("deflate", "([B)I", "GetDeflate_arrayBHandler")]
public virtual int Deflate(byte[]? output);
[<Android.Runtime.Register("deflate", "([B)I", "GetDeflate_arrayBHandler")>]
abstract member Deflate : byte[] -> int
override this.Deflate : byte[] -> int
パラメーター
- output
- Byte[]
圧縮データのバッファー
返品
出力バッファーに書き込まれた圧縮データの実際のバイト数
- 属性
注釈
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 圧縮されたデータの実際のバイト数を返します。 戻り値 0 は、より多くの入力データが必要かどうかを判断するために #needsInput() needsInput を呼び出す必要があることを示します。
このメソッドは、圧縮フラッシュ モードとして #NO_FLUSH を使用します。 フォームのこのメソッドの呼び出し deflater.deflate(b) 、 deflater.deflate(b, 0, b.length, Deflater.NO_FLUSH)の呼び出しと同じ結果が生成されます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
Deflate(ByteBuffer, Int32)
入力データを圧縮し、指定したバッファーに圧縮データを格納します。
[Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;I)I", "GetDeflate_Ljava_nio_ByteBuffer_IHandler", ApiSince=35)]
public virtual int Deflate(Java.Nio.ByteBuffer? output, int flush);
[<Android.Runtime.Register("deflate", "(Ljava/nio/ByteBuffer;I)I", "GetDeflate_Ljava_nio_ByteBuffer_IHandler", ApiSince=35)>]
abstract member Deflate : Java.Nio.ByteBuffer * int -> int
override this.Deflate : Java.Nio.ByteBuffer * int -> int
パラメーター
- output
- ByteBuffer
圧縮データのバッファー
- flush
- Int32
圧縮フラッシュ モード
返品
出力バッファーに書き込まれた圧縮データの実際のバイト数
- 属性
注釈
入力データを圧縮し、指定したバッファーに圧縮データを格納します。 圧縮されたデータの実際のバイト数を返します。
圧縮フラッシュ モードは、次の 3 つのモードのいずれかです。
<ul><li>#NO_FLUSH: 最適な圧縮を実現するために、出力を生成する前に、デフレーターが蓄積するデータの量を決定できます (通常の使用シナリオで使用する必要があります)。 このフラッシュ モードの戻り値 0 は、より多くの入力データが必要かどうかを判断するために #needsInput() を呼び出す必要があることを示します。
<li>#SYNC_FLUSH: デフレーター内のすべての保留中の出力が、指定された出力バッファーにフラッシュされるため、圧縮データで動作するすべての入力データを取得できます (特に、 #needsInput() は、十分な出力領域が提供された場合、この呼び出しの後に true を返します)。
#SYNC_FLUSHを使用してフラッシュすると、一部の圧縮アルゴリズムの圧縮が低下する可能性があるため、必要な場合にのみ使用する必要があります。
<li>#FULL_FLUSH: 保留中のすべての出力は、 #SYNC_FLUSHと同様にフラッシュされます。 圧縮状態がリセットされ、圧縮された出力データで動作するインフレータは、以前の圧縮データが破損している場合やランダム アクセスが必要な場合に、この時点から再起動できます。
#FULL_FLUSHを頻繁に使用すると、圧縮が深刻に低下する可能性があります。
</ul>
#FULL_FLUSHまたは#SYNC_FLUSHの場合、戻り値がバッファーの ByteBuffer#remaining() の残りの領域と等しい場合は、同じflush パラメーターとより多くの出力領域を使用して、このメソッドを再度呼び出す必要があります。 このメソッドが呼び出されるたびにフラッシュ マーカー (5 バイト) が出力バッファーに繰り返し出力されないように、バッファーに少なくとも 6 バイトの残りの領域があることを確認します。
成功した場合、指定された output バイト バッファーの位置は、操作によって生成されたバイト数だけ進められます。これは、このメソッドによって返された数と同じです。
入力用のバッファーを提供するために #setInput(ByteBuffer) メソッドが呼び出された場合、入力バッファーの位置は、この操作で使用されたバイト数だけ進められます。
11 に追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
Deflate(Byte[], Int32, Int32)
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。
[Android.Runtime.Register("deflate", "([BII)I", "GetDeflate_arrayBIIHandler")]
public virtual int Deflate(byte[]? output, int off, int len);
[<Android.Runtime.Register("deflate", "([BII)I", "GetDeflate_arrayBIIHandler")>]
abstract member Deflate : byte[] * int * int -> int
override this.Deflate : byte[] * int * int -> int
パラメーター
- output
- Byte[]
圧縮データのバッファー
- off
- Int32
データの開始オフセット
- len
- Int32
圧縮データの最大バイト数
返品
出力バッファーに書き込まれた圧縮データの実際のバイト数
- 属性
注釈
入力データを圧縮し、指定されたバッファーに圧縮データを格納します。 圧縮されたデータの実際のバイト数を返します。 戻り値 0 は、より多くの入力データが必要かどうかを判断するために #needsInput() needsInput を呼び出す必要があることを示します。
このメソッドは、圧縮フラッシュ モードとして #NO_FLUSH を使用します。 フォームのこのメソッドの呼び出し deflater.deflate(b, off, len) 、 deflater.deflate(b, off, len, Deflater.NO_FLUSH)の呼び出しと同じ結果が生成されます。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
適用対象
Deflate(Byte[], Int32, Int32, Int32)
入力データを圧縮し、指定したバッファーに圧縮データを格納します。
[Android.Runtime.Register("deflate", "([BIII)I", "GetDeflate_arrayBIIIHandler")]
public virtual int Deflate(byte[]? output, int off, int len, int flush);
[<Android.Runtime.Register("deflate", "([BIII)I", "GetDeflate_arrayBIIIHandler")>]
abstract member Deflate : byte[] * int * int * int -> int
override this.Deflate : byte[] * int * int * int -> int
パラメーター
- output
- Byte[]
圧縮データのバッファー
- off
- Int32
データの開始オフセット
- len
- Int32
圧縮データの最大バイト数
- flush
- Int32
圧縮フラッシュ モード
返品
出力バッファーに書き込まれた圧縮データの実際のバイト数
- 属性
例外
flushが無効な場合は
注釈
入力データを圧縮し、指定したバッファーに圧縮データを格納します。 圧縮されたデータの実際のバイト数を返します。
圧縮フラッシュ モードは、次の 3 つのモードのいずれかです。
<ul><li>#NO_FLUSH: 最適な圧縮を実現するために、出力を生成する前に、デフレーターが蓄積するデータの量を決定できます (通常の使用シナリオで使用する必要があります)。 このフラッシュ モードの戻り値 0 は、より多くの入力データが必要かどうかを判断するために #needsInput() を呼び出す必要があることを示します。
<li>#SYNC_FLUSH: デフレーター内のすべての保留中の出力が、指定された出力バッファーにフラッシュされるため、圧縮データで動作するすべての入力データを取得できます (特に、 #needsInput() は、十分な出力領域が提供された場合、この呼び出しの後に true を返します)。
#SYNC_FLUSHを使用してフラッシュすると、一部の圧縮アルゴリズムの圧縮が低下する可能性があるため、必要な場合にのみ使用する必要があります。
<li>#FULL_FLUSH: 保留中のすべての出力は、 #SYNC_FLUSHと同様にフラッシュされます。 圧縮状態がリセットされ、圧縮された出力データで動作するインフレータは、以前の圧縮データが破損している場合やランダム アクセスが必要な場合に、この時点から再起動できます。
#FULL_FLUSHを頻繁に使用すると、圧縮が深刻に低下する可能性があります。
</ul>
#FULL_FLUSHまたは#SYNC_FLUSHの場合、戻り値がlenの場合、出力バッファーで使用可能な領域b、このメソッドは同じflush パラメーターとより多くの出力領域を使用して再度呼び出す必要があります。 このメソッドが呼び出されるたびにフラッシュ マーカー (5 バイト) が出力バッファーに繰り返し出力されないように、 len が 6 より大きくなっています。
入力用のバッファーを提供するために #setInput(ByteBuffer) メソッドが呼び出された場合、入力バッファーの位置は、この操作で使用されたバイト数だけ進められます。
1.7 で追加されました。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。