AsnDecoder.TryReadCharacterString Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Считывает символьное строковое значение из с source
указанным тегом в соответствии с заданными правилами кодирования, копируя декодированную строку в предоставленный буфер назначения.
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
Параметры
- source
- ReadOnlySpan<Byte>
Буфер, содержащий закодированные данные.
- ruleSet
- AsnEncodingRules
Ограничения кодирования, используемые при интерпретации данных.
- encodingType
- UniversalTagNumber
Одно из значений перечисления, которое представляет тип значения для обработки.
- bytesConsumed
- Int32
При возврате из этого метода — общее количество байтов для закодированного значения. Этот параметр обрабатывается как неинициализированный.
- charsWritten
- Int32
При возврате из этого метода — число символов, записанных в destination
.
Этот параметр обрабатывается как неинициализированный.
Тег для проверки перед чтением или null
для универсального тега, соответствующего запрошенному типу кодирования.
Возвращаемое значение
Возвращает значение true
и перемещает позицию чтения модуля чтения, если длина destination
была достаточной для получения значения, в противном случае возвращает значение false
, а позиция чтения модуля чтения не перемещается.
Исключения
ruleSet
не определен.
-или-
encodingType
не является известным типом строки символов.
У следующего значения нет правильного тега.
-или-
Кодировка длины недопустима в соответствии с текущими правилами кодирования.
-или-
Содержимое недопустимо в соответствии с текущими правилами кодирования.
-или-
Не удалось декодировать строку.
expectedTag
.TagClass имеет значение Universal, но expectedTag
.TagValue — это не то же самое, что encodingType
.