Rune.DecodeFromUtf8(ReadOnlySpan<Byte>, Rune, Int32) Methode

Definitie

Decodeert de aan Rune het begin van de opgegeven UTF-8-bronbuffer.

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

Parameters

source
ReadOnlySpan<Byte>

Een alleen-lezen UTF-8 gecodeerd byte span.

result
Rune

Wanneer deze methode wordt geretourneerd, wordt de gedecodeerde rune.

bytesConsumed
Int32

Wanneer deze methode wordt geretourneerd, wordt het aantal bytes gelezen om de rune te maken.

Retouren

Done als de bronbuffer begint met een geldige UTF-8 gecodeerde scalaire waarde. result bevat vervolgens het gedecodeerde Runeen bytesConsumed bevat het aantal Byte waarden dat in de invoerbuffer wordt gebruikt om de Rune.

NeedMoreData als de bronbuffer leeg is of alleen een zelfstandig UTF-8 hoog surrogaatteken bevat. resultbevat ReplacementCharbytesConsumed en bevat de lengte van de invoerbuffer.

InvalidData als de bronbuffer begint met een ongeldige UTF-8 gecodeerde scalaire waarde. result bevat ReplacementChar, en bytesConsumed bevat het aantal Byte waarden dat in de invoerbuffer wordt gebruikt om de ziek gevormde reeks te coderen. .

Opmerkingen

De algemene conventie is om deze methode in een lus aan te roepen, waarbij de source buffer door bytesConsumed elementen wordt gesegmenteerd op elke iteratie van de lus. Bij elke iteratie van de lus result bevat u de werkelijke scalaire waarde als deze is gedecodeerd of als Rune.ReplacementChar de gegevens niet kunnen worden gedecodeerd. Dit patroon biedt handige automatische U+FFFD-vervanging van ongeldige reeksen tijdens het doorlopen van de lus.

Van toepassing op