Utf8.ToUtf16 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將 UTF-8 編碼的唯讀位元組區間轉換為 UTF-16 編碼字元區間。
public static System.Buffers.OperationStatus ToUtf16(ReadOnlySpan<byte> source, Span<char> destination, out int bytesRead, out int charsWritten, bool replaceInvalidSequences = true, bool isFinalBlock = true);
static member ToUtf16 : ReadOnlySpan<byte> * Span<char> * int * int * bool * bool -> System.Buffers.OperationStatus
Public Shared Function ToUtf16 (source As ReadOnlySpan(Of Byte), destination As Span(Of Char), ByRef bytesRead As Integer, ByRef charsWritten As Integer, Optional replaceInvalidSequences As Boolean = true, Optional isFinalBlock As Boolean = true) As OperationStatus
參數
- source
- ReadOnlySpan<Byte>
一個 UTF-8 編碼的唯讀位元組區間。
- bytesRead
- Int32
當方法返回時,從 中讀取 source的位元組數。
- charsWritten
- Int32
當方法返回時,寫入 destination的字元數為 。
- replaceInvalidSequences
- Boolean
true用 U+FFFD 替換無效的 UTF-8 序列source;false若在 中發現source無效字元,則回傳InvalidData。
- isFinalBlock
- Boolean
true 若方法不應回傳 NeedMoreData;否則, false。
傳回
一個表示轉換狀態的值。
備註
此方法對應於 UTF8Encoding.GetChars 方法,但其呼叫慣例、錯誤處理機制及效能特性不同。
若「replaceInvalidSequences」為 true,則該方法將任何不完整子序列 source 替換為 U+FFFD , destination 並繼續處理緩衝區的其餘部分。 否則,若遇到任何不成形序列,方法會回傳 OperationStatus.InvalidData 。
若方法回傳錯誤碼,輸出參數顯示成功轉碼的部分資料,並可從這些值推斷出錯誤子序列的位置。
若「replaceInvalidSequences」為 true,該方法永遠不會回傳 OperationStatus.InvalidData。 若「isFinalBlock」為 true,該方法永遠不會回傳 OperationStatus.NeedMoreData。