Partage via


AsnDecoder.ReadEncodedValue Méthode

Définition

Localise la plage de contenu pour la valeur encodée au début de la mémoire tampon source en utilisant les règles d’encodage spécifiées.

public:
 static System::Formats::Asn1::Asn1Tag ReadEncodedValue(ReadOnlySpan<System::Byte> source, System::Formats::Asn1::AsnEncodingRules ruleSet, [Runtime::InteropServices::Out] int % contentOffset, [Runtime::InteropServices::Out] int % contentLength, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Formats.Asn1.Asn1Tag ReadEncodedValue (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int contentOffset, out int contentLength, out int bytesConsumed);
static member ReadEncodedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * int * int -> System.Formats.Asn1.Asn1Tag
Public Shared Function ReadEncodedValue (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef contentOffset As Integer, ByRef contentLength As Integer, ByRef bytesConsumed As Integer) As Asn1Tag

Paramètres

source
ReadOnlySpan<Byte>

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

ruleSet
AsnEncodingRules

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

contentOffset
Int32

Lorsque cette méthode retourne une valeur, décalage de la charge utile de contenu par rapport au début de source. Ce paramètre est traité comme étant non initialisé.

contentLength
Int32

Lorsque cette méthode retourne une valeur, nombre d’octets dans la charge utile de contenu (peut être égal à 0). Ce paramètre est traité comme étant non initialisé.

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é.

Retours

Balise identifiant le contenu.

Exceptions

ruleSet n’est pas défini.

source ne représente pas une valeur encodée selon les règles d’encodage spécifiées.

Remarques

Cette méthode effectue très peu de validation sur le contenu. Si la valeur encodée utilise une longueur définie, le contenu n’est pas inspecté du tout. Si la valeur encodée utilise une longueur indéfinie, le contenu est inspecté uniquement si nécessaire pour déterminer l’emplacement du marqueur de fin de contenu approprié.

Lorsque la valeur encodée utilise une longueur indéfinie, la bytesConsumed valeur est supérieure à la somme de contentOffset et contentLength pour tenir compte du marqueur de fin de contenu.

S’applique à