Rune.DecodeFromUtf16(ReadOnlySpan<Char>, Rune, Int32) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Decodeert de aan Rune het begin van de opgegeven UTF-16-bronbuffer.
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
Parameters
- source
- ReadOnlySpan<Char>
Een alleen-lezen UTF-16-tekenbereik.
- result
- Rune
Wanneer deze methode wordt geretourneerd, wordt de gedecodeerde rune.
- charsConsumed
- Int32
Wanneer deze methode wordt geretourneerd, wordt het aantal tekens gelezen om de rune te maken.
Retouren
Done als de bronbuffer begint met een geldige UTF-16 gecodeerde scalaire waarde.
result bevat vervolgens het gedecodeerde Runeen charsConsumed bevat het aantal Char waarden dat in de invoerbuffer wordt gebruikt om de Rune.
NeedMoreData als de bronbuffer leeg is of alleen een zelfstandig UTF-16 hoog surrogaatteken bevat.
resultbevat ReplacementCharcharsConsumed en bevat de lengte van de invoerbuffer.
InvalidData als de bronbuffer begint met een ongeldige UTF-16 gecodeerde scalaire waarde.
result bevat ReplacementChar, en charsConsumed bevat het aantal Char waarden dat 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 charsConsumed elementen wordt gesegmenteerd op elke iteratie van de lus. Bij elke iteratie van de lus result bevat u de werkelijke scalaire waarde als de gegevens zijn gedecodeerd of als Rune.ReplacementChar de gegevens niet zijn gedecodeerd. Dit patroon biedt handige automatische U+FFFD-vervanging van ongeldige reeksen tijdens het doorlopen van de lus.