Rune.DecodeFromUtf8(ReadOnlySpan<Byte>, 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-8 kaynak arabelleğinin başındaki kodunu çözer 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
Parametreler
- source
- ReadOnlySpan<Byte>
Salt okunur UTF-8 kodlanmış bayt aralığı.
- result
- Rune
Bu yöntem döndürdüğünde kodu çözülen rune.
- bytesConsumed
- Int32
Bu yöntem döndürdüğünde, çalıştırmayı oluşturmak için okunan bayt sayısı.
Döndürülenler
Done kaynak arabelleği geçerli bir UTF-8 kodlanmış skaler değerle başlıyorsa. result
ardından kodunun kodunun çözülmesini Runeiçerir ve bytesConsumed
giriş arabelleğinde Runekullanılan değerlerin sayısını Byte içerir.
NeedMoreData kaynak arabelleği boşsa veya yalnızca tek başına UTF-8 yüksek vekil karakter içeriyorsa. result
ardından öğesini bytesConsumed
ve ReplacementChargiriş arabelleğinin uzunluğunu içerir.
InvalidData kaynak arabelleği kötü biçimlendirilmiş UTF-8 kodlanmış skaler değerle başlıyorsa. result
ardından öğesini içerir ReplacementCharve bytesConsumed
kötü biçimlendirilmiş diziyi kodlamak için giriş arabelleğinde kullanılan değerlerin sayısını Byte 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 bytesConsumed
dilimler. Döngünün her yinelemesinde, result
kodu başarıyla çözülen gerçek skaler değeri içerir veya verilerin kodunun başarıyla çözülüp çözülemediğ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.