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

出力文字バッファー

戻り値

終了の理由を記述するコーダー結果オブジェクト

属性

注釈

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)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象