Lingua

AsnDecoder.TryReadBitString Metodo

Definizione

Tenta di copiare un valore stringa di bit da source con un tag specificato nelle regole di codifica specificate in destination.

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

Parametri

source
ReadOnlySpan<Byte>

Buffer contenente dati codificati.

destination
Span<Byte>

Buffer in cui scrivere.

ruleSet
AsnEncodingRules

Vincoli di codifica da usare per interpretare i dati.

unusedBitCount
Int32

In caso di esito positivo, riceve il numero di bit nell'ultimo byte segnalato come "inutilizzato" dal writer. Questo parametro viene considerato non inizializzato.

bytesConsumed
Int32

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

bytesWritten
Int32

Quando termina, il numero totale di byte scritti in destination. Questo parametro viene considerato non inizializzato.

expectedTag
Nullable<Asn1Tag>

Tag da verificare prima della lettura o null del tag predefinito (Universal 3).

Valori restituiti

true se destination è sufficientemente grande da ricevere il valore della stringa di bit; in caso contrario, false.

Eccezioni

ruleSet non è definito.

Il valore successivo non ha il tag corretto.

oppure

La codifica della lunghezza non è valida nelle regole di codifica correnti.

oppure

Il contenuto non è valido nelle regole di codifica correnti.

expectedTag.TagClass è Universal, ma expectedTag.TagValue non è corretto per il metodo .

oppure

destination sourcesi sovrappone a .

Commenti

I bit meno significativi nell'ultimo byte segnalati come "inutilizzati" dal unusedBitCount valore verranno copiati destination come bit non distribuiti, indipendentemente dal valore nella rappresentazione codificata.

Si applica a

Vedi anche