Freigeben über


AsnDecoder.TryReadCharacterString Methode

Definition

Liest einen Zeichenfolgenwert aus mit source einem angegebenen Tag unter den angegebenen Codierungsregeln und kopiert die decodierte Zeichenfolge in einen bereitgestellten Zielpuffer.

public static bool TryReadCharacterString (ReadOnlySpan<byte> source, Span<char> destination, System.Formats.Asn1.AsnEncodingRules ruleSet, System.Formats.Asn1.UniversalTagNumber encodingType, out int bytesConsumed, out int charsWritten, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member TryReadCharacterString : ReadOnlySpan<byte> * Span<char> * System.Formats.Asn1.AsnEncodingRules * System.Formats.Asn1.UniversalTagNumber * int * int * Nullable<System.Formats.Asn1.Asn1Tag> -> bool
Public Shared Function TryReadCharacterString (source As ReadOnlySpan(Of Byte), destination As Span(Of Char), ruleSet As AsnEncodingRules, encodingType As UniversalTagNumber, ByRef bytesConsumed As Integer, ByRef charsWritten As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As Boolean

Parameter

source
ReadOnlySpan<Byte>

Der Puffer, der codierte Daten enthält.

destination
Span<Char>

Der Puffer, in den geschrieben werden soll.

ruleSet
AsnEncodingRules

Die Codierungseinschränkungen, die beim Interpretieren der Daten verwendet werden sollen.

encodingType
UniversalTagNumber

Einer der Enumerationswerte, der den zu verarbeitenden Werttyp darstellt.

bytesConsumed
Int32

Die Rückgabe dieser Methode ist die Gesamtzahl der Bytes für den codierten Wert. Dieser Parameter wird nicht initialisiert behandelt.

charsWritten
Int32

Die Rückgabe dieser Methode ist die Anzahl der in destination geschriebenen Zeichen. Dieser Parameter wird nicht initialisiert behandelt.

expectedTag
Nullable<Asn1Tag>

Das Tag, auf das vor dem Lesen überprüft werden soll, oder null für das universelle Tag, das für den angeforderten Codierungstyp geeignet ist.

Gibt zurück

true und bewegt den Reader vorwärts, wenn destination eine ausreichende Länge zum Empfangen des Werts hatte, andernfalls, false und der Reader wird nicht vorwärtsbewegt.

Ausnahmen

ruleSet ist nicht definiert.

Oder

encodingType ist kein bekannter Zeichenfolgentyp.

Der nächste Wert hat nicht das richtige Tag.

Oder

Die Längencodierung ist gemäß den aktuellen Codierungsregeln ungültig.

Oder

Die Inhalte sind gemäß den aktuellen Codierungsregeln ungültig.

Oder

Die Zeichenfolge wurde nicht erfolgreich decodiert.

expectedTag.TagClass ist Universal, aber expectedTag.TagValue ist nicht identisch mit encodingType.

Gilt für: