CharsetDecoder.DecodeLoop(ByteBuffer, CharBuffer) メソッド

定義

1 つ以上のバイトを 1 つ以上の文字にデコードします。

[Android.Runtime.Register("decodeLoop", "(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;", "GetDecodeLoop_Ljava_nio_ByteBuffer_Ljava_nio_CharBuffer_Handler")]
protected abstract Java.Nio.Charset.CoderResult? DecodeLoop (Java.Nio.ByteBuffer? in, Java.Nio.CharBuffer? out);
[<Android.Runtime.Register("decodeLoop", "(Ljava/nio/ByteBuffer;Ljava/nio/CharBuffer;)Ljava/nio/charset/CoderResult;", "GetDecodeLoop_Ljava_nio_ByteBuffer_Ljava_nio_CharBuffer_Handler")>]
abstract member DecodeLoop : Java.Nio.ByteBuffer * Java.Nio.CharBuffer -> Java.Nio.Charset.CoderResult

パラメーター

in
ByteBuffer

入力バイト バッファー

out
CharBuffer

出力文字バッファー

戻り値

終了の理由を記述する coder-result オブジェクト

属性

注釈

1 つ以上のバイトを 1 つ以上の文字にデコードします。

このメソッドは、基本的なデコード ループをカプセル化し、入力が不足するか、出力バッファーの空き容量が不足するか、デコード エラーが発生するまで、可能な限り多くのバイトをデコードします。 このメソッドは、 メソッドによって #decode decode 呼び出され、結果の解釈とエラーの回復を処理します。

バッファーは、現在の位置から読み取られ、書き込まれます。 最大 Buffer#remaining in.remaining() バイトは読み取られ、最大 Buffer#remaining out.remaining() で文字が書き込まれます。 バッファーの位置は、読み取られたバイトと書き込まれた文字を反映するように拡張されますが、それらのマークと制限は変更されません。

このメソッドは、 メソッドと CoderResult 同じ方法で、終了の理由を説明する オブジェクトを #decode decode 返します。 このメソッドのほとんどの実装では、 メソッドによる解釈に適した結果オブジェクトを返すことで、デコード エラーを #decode decode 処理します。 最適化された実装では、代わりに関連するエラー アクションを調べて、そのアクション自体を実装できます。

このメソッドの実装では、十分な入力を受け取るまで を返すことによって、任意の先読みを CoderResult#UNDERFLOW 実行できます。

の Java ドキュメント java.nio.charset.CharsetDecoder.decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer)

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

適用対象