AsnDecoder.TryReadBitString Metoda

Definicja

Próbuje skopiować wartość ciągu bitowego z source określonego tagu w ramach określonych reguł kodowania do 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

Parametry

source
ReadOnlySpan<Byte>

Bufor zawierający zakodowane dane.

destination
Span<Byte>

Bufor, w którym ma być zapisywany.

ruleSet
AsnEncodingRules

Ograniczenia kodowania, które mają być używane podczas interpretowania danych.

unusedBitCount
Int32

Po pomyślnym odebraniu liczby bitów w ostatnim bajtzie, które zostały zgłoszone jako "nieużywane" przez składnik zapisywania. Ten parametr jest traktowany jako niezainicjowany.

bytesConsumed
Int32

Gdy ta metoda zwraca, łączna liczba bajtów dla zakodowanej wartości. Ten parametr jest traktowany jako niezainicjowany.

bytesWritten
Int32

Gdy ta metoda zwraca, łączna liczba bajtów zapisywanych w obiekcie destination. Ten parametr jest traktowany jako niezainicjowany.

expectedTag
Nullable<Asn1Tag>

Tag do sprawdzenia przed odczytaniem lub null tagu domyślnego (Universal 3).

Zwraca

Boolean

true jeśli destination jest wystarczająco duży, aby otrzymać wartość ciągu bitowego; w przeciwnym razie false.

Wyjątki

ruleSet nie jest zdefiniowany.

Następna wartość nie ma poprawnego tagu.

-lub-

Kodowanie długości jest nieprawidłowe w ramach bieżących reguł kodowania.

-lub-

Zawartość nie jest prawidłowa zgodnie z bieżącymi regułami kodowania.

expectedTag.TagClass to Universal, ale expectedTag.TagValue metoda nie jest poprawna.

-lub-

destinationsourcenakłada się na .

Uwagi

Najmniej znaczące bity w ostatnim bajtzie, które są zgłaszane jako "nieużywane" przez unusedBitCount wartość, zostaną skopiowane jako destination niezbięte bity, niezależnie od ich wartości w zakodowanej reprezentacji.

Dotyczy