次の方法で共有


Utf8.ToUtf16 メソッド

定義

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 でエンコードされた読み取り専用のバイト スパン。

destination
Span<Char>

UTF-16 でエンコードされた文字スパン。

bytesRead
Int32

メソッドが戻るときに、source から読み取られたバイト数。

charsWritten
Int32

メソッドが戻るときに、destination に書き込まれる文字数。

replaceInvalidSequences
Boolean

source で無効な UTF-8 シーケンスを U+FFFD に置き換えるには true、無効な文字が source で見つかった場合に InvalidData を返すには false

isFinalBlock
Boolean

メソッドで NeedMoreData を返さない場合は true、それ以外の場合は false

戻り値

変換の状態を示す値。

注釈

このメソッドは UTF8Encoding.GetChars メソッドに対応します。ただし、呼び出し規則が異なり、エラー処理メカニズムが異なり、パフォーマンス特性が異なる点が異なります。

'replaceInvalidSequences' が の場合、 メソッドは trueの形式が正しくないサブシーケンス source を の U+FFFD に destination 置き換え、バッファーの残りの処理を続行します。 それ以外の場合、形式が正しくないシーケンスが検出された場合、 メソッドは を返 OperationStatus.InvalidData します。

メソッドがエラー コードを返す場合、out パラメーターは、正常にトランスコードされたデータの量を示し、これらの値から正しくない形式のサブシーケンスの場所を推測できます。

'replaceInvalidSequences' が の場合、 メソッドは trueOperationStatus.InvalidData返しません。 'isFinalBlock' が の場合、 メソッドは trueOperationStatus.NeedMoreData返しません。

適用対象