Rune.DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定された UTF-8 ソース バッファーの先頭で Rune を復号します。
public:
static System::Buffers::OperationStatus DecodeFromUtf8(ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Buffers.OperationStatus DecodeFromUtf8 (ReadOnlySpan<byte> source, out System.Text.Rune result, out int bytesConsumed);
static member DecodeFromUtf8 : ReadOnlySpan<byte> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf8 (source As ReadOnlySpan(Of Byte), ByRef result As Rune, ByRef bytesConsumed As Integer) As OperationStatus
パラメーター
- source
- ReadOnlySpan<Byte>
UTF-8 でエンコードされた読み取り専用バイト スパン。
- result
- Rune
このメソッドから制御が戻るときに、デコードされたルーン。
- bytesConsumed
- Int32
このメソッドから制御が戻るときに、ルーンを作成するために読み取られたバイト数。
戻り値
UTF-8 でエンコードされた有効なスカラー値でソース バッファーが始まる場合、Done。 結果として、復号された Rune が result
に含まれます。bytesConsumed
には Rune をエンコードする目的で入力バッファーで使用される Byte 値の数が含まれます。
ソース バッファーが空か、スタンドアロンの UTF-8 上位サロゲート文字のみが含まれる場合、NeedMoreData。 結果として、result
に ReplacementChar が含まれ、bytesConsumed
には入力バッファーの長さが含まれます。
UTF-8 でエンコードされた、形式が正しくないスカラー値で入力バッファーが始まる場合、InvalidData。 結果として、result
に ReplacementChar が含まれ、bytesConsumed
には形式が正しくないシーケンスをエンコードする目的で入力バッファーで使用された Byte 値の数が含まれます。
.
注釈
一般的な規則では、ループ内でこのメソッドを呼び出し、ループの source
各反復処理で要素ごとに bytesConsumed
バッファーをスライスします。 ループの各イテレーションで、 result
デコードに成功した場合は実際のスカラー値が含まれます。または、データを正常にデコードできなかった場合は含まれます Rune.ReplacementChar 。 このパターンは、ループの反復処理中に無効なシーケンスの自動 U+FFFD 置換を便利に提供します。