AsnDecoder.TryReadCharacterString Metoda

Definicja

Odczytuje wartość ciągu znaku z source określonego tagu zgodnie z określonymi regułami kodowania, kopiując zdekodowany ciąg do dostarczonego buforu docelowego.

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

Parametry

source
ReadOnlySpan<Byte>

Bufor zawierający zakodowane dane.

destination
Span<Char>

Bufor, w którym ma być zapisywany.

ruleSet
AsnEncodingRules

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

encodingType
UniversalTagNumber

Jedna z wartości wyliczenia, która reprezentuje typ wartości do przetworzenia.

bytesConsumed
Int32

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

charsWritten
Int32

Gdy ta metoda zwróci wartość , liczba znaków zapisanych w obiekcie destination. Ten parametr jest traktowany jako niezainicjowany.

expectedTag
Nullable<Asn1Tag>

Tag do sprawdzenia przed odczytaniem lub null dla uniwersalnego tagu, który jest odpowiedni dla żądanego typu kodowania.

Zwraca

Boolean

true i przechodzi czytelnika, jeśli destination miał wystarczającą długość, aby otrzymać wartość, w przeciwnym razie false , a czytelnik nie przechodzi.

Wyjątki

ruleSet nie jest zdefiniowany.

-lub-

encodingType nie jest znanym typem ciągu znaków.

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.

-lub-

Ciąg nie został pomyślnie zdekodowane.

expectedTag.TagClass to Universal, ale expectedTag.TagValue element nie jest taki sam jak encodingType.

Dotyczy