語言

CharsetEncoder.EncodeLoop(CharBuffer, ByteBuffer) 方法

定義

將一個或多個字元編碼成一個或多個位元組。

[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

輸出位元組緩衝區

傳回

一個描述終止原因的編碼器結果物件

屬性

備註

將一個或多個字元編碼成一個或多個位元組。

此方法封裝基本編碼迴圈,盡可能編碼字元,直到輸入用盡、輸出緩衝區空間不足或遇到編碼錯誤為止。 此方法由處理結果解讀與錯誤恢復的方法所呼叫 #encode encode 。

緩衝區從目前位置開始讀取與寫入。 最多 Buffer#remaining in.remaining() 只能讀取字元,最多 Buffer#remaining out.remaining() 只寫入位元組。 緩衝區的位置會隨著讀取字元和寫入位元組而前進,但標記與限制不會被修改。

此方法回傳 CoderResult 一個物件,以描述終止原因,方式與該 #encode encode 方法相同。 大多數此方法的實作會透過回傳適當的結果物件來處理編碼錯誤,供方法解釋 #encode encode 。 優化後的實作可能會檢視相關的錯誤動作,並實作該動作本身。

此方法的實作可透過返回 CoderResult#UNDERFLOW 直到收到足夠輸入為止,執行任意前瞻。

Java 文件 java.nio.charset.CharsetEncoder.encodeLoop(java.nio.CharBuffer, java.nio.ByteBuffer)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於