Lingua

AsnDecoder.ReadEncodedValue Metodo

Definizione

Individua l'intervallo di contenuti per il valore codificato all'inizio del source buffer usando le regole di codifica specificate.

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

Parametri

source
ReadOnlySpan<Byte>

Buffer contenente dati codificati.

ruleSet
AsnEncodingRules

Vincoli di codifica da usare per interpretare i dati.

contentOffset
Int32

Quando termina, questo metodo contiene l'offset del payload del contenuto rispetto all'inizio di source. Questo parametro viene considerato non inizializzato.

contentLength
Int32

Quando termina, questo metodo contiene il numero di byte nel payload del contenuto (che può essere 0). Questo parametro viene considerato non inizializzato.

bytesConsumed
Int32

Quando termina, questo metodo contiene il numero totale di byte per il valore codificato. Questo parametro viene considerato non inizializzato.

Valori restituiti

Tag che identifica il contenuto.

Eccezioni

ruleSet non è definito.

source non rappresenta un valore codificato nelle regole di codifica specificate.

Commenti

Questo metodo esegue pochissima convalida sul contenuto. Se il valore codificato usa una lunghezza definita, il contenuto non viene controllato affatto. Se il valore codificato utilizza una lunghezza indefinita, il contenuto viene controllato solo se necessario per determinare la posizione del marcatore finale del contenuto pertinente.

Quando il valore codificato usa una lunghezza indefinita, il bytesConsumed valore sarà maggiore della somma di contentOffset e contentLength per tenere conto del marcatore di fine contenuto.

Si applica a