Lire en anglais

Partager via


AsnDecoder.TryReadCharacterString Méthode

Définition

Lit une valeur de chaîne de caractères à partir de source avec une balise spécifiée sous les règles d’encodage spécifiées, en copiant la chaîne décodée dans une mémoire tampon de destination fournie.

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

Paramètres

source
ReadOnlySpan<Byte>

Mémoire tampon contenant les données encodées.

destination
Span<Char>

Mémoire tampon dans laquelle écrire.

ruleSet
AsnEncodingRules

Contraintes d’encodage à utiliser lors de l’interprétation des données.

encodingType
UniversalTagNumber

L’une des valeurs d’énumération qui représente le type de valeur à traiter.

bytesConsumed
Int32

Lorsque cette méthode retourne une valeur, nombre total d’octets pour la valeur encodée. Ce paramètre est traité comme étant non initialisé.

charsWritten
Int32

Lorsque cette méthode retourne une valeur, nombre de caractères écrits sur destination. Ce paramètre est traité comme étant non initialisé.

expectedTag
Nullable<Asn1Tag>

Balise à vérifier avant la lecture, ou null pour la balise universelle adaptée au type d’encodage demandé.

Retours

true et avance le lecteur si la longueur de destination est suffisante pour recevoir la valeur ; sinon, false et le lecteur n’avance pas.

Exceptions

ruleSet n’est pas défini.

-ou-

encodingType n’est pas un type de chaîne de caractères connu.

La valeur suivante n’a pas la balise correcte.

-ou-

L’encodage de longueur n’est pas valide selon les règles d’encodage actuelles.

-ou-

Le contenu n’est pas valide selon les règles d’encodage actuelles.

-ou-

La chaîne n’a pas réussi à décoder.

expectedTag.TagClass est Universal, mais expectedTag.TagValue n’est pas identique à encodingType.

S’applique à

Produit Versions
.NET 5, 6, 7, 8, 9