Rune.DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Yöntem

Tanım

Sağlanan UTF-16 kaynak arabelleğinin başındaki kodunu çözer Rune .

public:
 static System::Buffers::OperationStatus DecodeFromUtf16(ReadOnlySpan<char> source, [Runtime::InteropServices::Out] System::Text::Rune % result, [Runtime::InteropServices::Out] int % charsConsumed);
public static System.Buffers.OperationStatus DecodeFromUtf16 (ReadOnlySpan<char> source, out System.Text.Rune result, out int charsConsumed);
static member DecodeFromUtf16 : ReadOnlySpan<char> * Rune * int -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf16 (source As ReadOnlySpan(Of Char), ByRef result As Rune, ByRef charsConsumed As Integer) As OperationStatus

Parametreler

source
ReadOnlySpan<Char>

Salt okunur UTF-16 karakter aralığı.

result
Rune

Bu yöntem döndürdüğünde kodu çözülen rune.

charsConsumed
Int32

Bu yöntem döndürdüğünde, rune oluşturmak için okunan karakter sayısı.

Döndürülenler

OperationStatus

Done kaynak arabelleği geçerli bir UTF-16 kodlanmış skaler değerle başlıyorsa. resultardından kodunun kodunun çözülmesini Runeiçerir ve charsConsumed giriş arabelleğinde Runekullanılan değerlerin sayısını Char içerir.

NeedMoreData kaynak arabelleği boşsa veya yalnızca tek başına UTF-16 yüksek vekil karakter içeriyorsa. resultardından öğesini charsConsumed ve ReplacementChargiriş arabelleğinin uzunluğunu içerir.

InvalidData kaynak arabelleğinin kötü biçimlendirilmiş UTF-16 kodlanmış skaler değerle başlaması durumunda. result ardından öğesini içerir ReplacementCharve charsConsumed kötü biçimlendirilmiş diziyi kodlamak için kullanılan değerlerin sayısını Char içerir. .

Açıklamalar

Genel kural, bu yöntemi döngüde çağırmak ve arabelleği döngünün source her yinelemesindeki öğelere göre charsConsumed dilimler. Döngünün her yinelemesinde, result verilerin kodu başarıyla çözüldüyse gerçek skaler değeri içerir veya verilerin kodunun başarıyla çözülüp çözülmediğini içerir Rune.ReplacementChar . Bu düzen, döngü boyunca yinelenirken geçersiz dizilerin kullanışlı otomatik U+FFFD değişimini sağlar.

Şunlara uygulanır