Rune.DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
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
Done kaynak arabelleği geçerli bir UTF-16 kodlanmış skaler değerle başlıyorsa. result
ardı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. result
ardı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.