Rune.DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Décode le Rune début de la mémoire tampon source UTF-8 fournie.
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
Paramètres
- source
- ReadOnlySpan<Byte>
Étendue d’octets encodée en lecture seule UTF-8.
- result
- Rune
Lorsque cette méthode est retournée, l’rune décodé.
- bytesConsumed
- Int32
Lorsque cette méthode est retournée, nombre d’octets lus pour créer l’rune.
Retours
Done si la mémoire tampon source commence par une valeur scalaire encodée UTF-8 valide.
result contient ensuite le décodé Runeet bytesConsumed contient le nombre de Byte valeurs utilisées dans la mémoire tampon d’entrée pour encoder le Rune.
NeedMoreData si la mémoire tampon source est vide ou contient uniquement un caractère de substitution UTF-8 autonome.
result
ReplacementCharcontient ensuite , et bytesConsumed contient la longueur de la mémoire tampon d’entrée.
InvalidData si la mémoire tampon source commence par une valeur scalaire encodée UTF-8 mal formée.
result
ReplacementCharcontient ensuite , et bytesConsumed contient le nombre de Byte valeurs utilisées dans la mémoire tampon d’entrée pour encoder la séquence mal formée.
.
Remarques
La convention générale consiste à appeler cette méthode dans une boucle, en coupant la source mémoire tampon par bytesConsumed des éléments sur chaque itération de la boucle. Sur chaque itération de la boucle, result contient la valeur scalaire réelle en cas de décodage réussi, ou contient Rune.ReplacementChar si les données ne pouvaient pas être correctement décodées. Ce modèle fournit une substitution U+FFFD automatique pratique des séquences non valides lors de l’itération au sein de la boucle.