Freigeben über


AsnDecoder.ReadEncodedValue Methode

Definition

Sucht den Inhaltsbereich für den codierten Wert am Anfang des source-Puffers unter Verwendung der angegebenen Codierungsregeln.

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

Parameter

source
ReadOnlySpan<Byte>

Der Puffer, der codierte Daten enthält.

ruleSet
AsnEncodingRules

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

contentOffset
Int32

Die Rückgabe dieser Methode ist der Offset der Inhaltsnutzlast relativ zum Anfang von source. Dieser Parameter wird nicht initialisiert behandelt.

contentLength
Int32

Die Rückgabe dieser Methode ist die Anzahl der Bytes in der Inhaltsnutzlast (die 0 sein kann). Dieser Parameter wird nicht initialisiert behandelt.

bytesConsumed
Int32

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

Gibt zurück

Das Tag, das den Inhalt identifiziert.

Ausnahmen

ruleSet ist nicht definiert.

source stellt keinen Wert dar, der gemäß den angegebenen Codierungsregeln codiert ist.

Hinweise

Diese Methode führt sehr wenig Überprüfung des Inhalts durch. Wenn der codierte Wert eine bestimmte Länge verwendet, wird der Inhalt überhaupt nicht überprüft. Wenn der codierte Wert eine unbestimmte Länge verwendet, werden die Inhalte nur bei Bedarf überprüft, um die Position des relevanten Inhaltsendemarkiers zu bestimmen.

Wenn der codierte Wert eine unbestimmte Länge verwendet, ist der bytesConsumed Wert größer als die Summe von contentOffset und contentLength , um den Marker zum Ende des Inhalts zu berücksichtigen.

Gilt für: