語言

CharsetDecoder.DecodeLoop(ByteBuffer, CharBuffer) 方法

定義

將一個或多個位元組解碼為一個或多個字元。

[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

輸出字元緩衝區

傳回

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

屬性

備註

將一個或多個位元組解碼為一個或多個字元。

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

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

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

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

的 java.nio.charset.CharsetDecoder.decodeLoop(java.nio.ByteBuffer, java.nio.CharBuffer)Java 檔。

此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。

適用於