AsnDecoder.TryReadBitString Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Próbuje skopiować wartość ciągu bitowego z source
określonego tagu zgodnie z określonymi regułami kodowania do destination
elementu .
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.
- ruleSet
- AsnEncodingRules
Ograniczenia kodowania używane podczas interpretowania danych.
- unusedBitCount
- Int32
Po powodzeniu otrzymuje liczbę bitów w ostatnim bajtzie, które zostały zgłoszone jako "nieużywane" przez pisarza. Ten parametr jest traktowany jako niezainicjowany.
- bytesConsumed
- Int32
Gdy ta metoda zostanie zwrócona, całkowita liczba bajtów dla zakodowanej wartości. Ten parametr jest traktowany jako niezainicjowany.
- bytesWritten
- Int32
Gdy ta metoda zwróci wartość , całkowita liczba bajtów zapisanych w obiekcie destination
.
Ten parametr jest traktowany jako niezainicjowany.
Tag do sprawdzenia przed odczytaniem lub null
dla tagu domyślnego (Universal 3).
Zwraca
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ść jest nieprawidłowa w ramach bieżących reguł kodowania.
expectedTag
.TagClass jest Universal, ale expectedTag
TagValue . nie jest poprawny dla metody .
-lub-
destination
nakłada się source
na program .
Uwagi
Najmniej znaczące bity w ostatnim bajtzie, które są zgłaszane jako "nieużywane" przez unusedBitCount
wartość, zostaną skopiowane jako destination
nieustawione bity, niezależnie od ich wartości w zakodowanej reprezentacji.