CharsetDecoder.DecodeLoop(ByteBuffer, CharBuffer) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將一個或多個位元組解碼為一個或多個字元。
[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 屬性授權中所述的詞彙使用。