CharsetEncoder.EncodeLoop(CharBuffer, ByteBuffer) メソッド

定義

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

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

パラメーター

in
CharBuffer

入力文字バッファー

out
ByteBuffer

出力バイト バッファー

返品

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

属性

注釈

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

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

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

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

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

Javaドキュメント。

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

適用対象