AsnDecoder.TryReadCharacterStringBytes 方法

定义

在指定编码规则下,尝试从带有指定标记的 source 中读取字符串值,以将未处理的字节复制到所提供的目标缓冲区。

public:
 static bool TryReadCharacterStringBytes(ReadOnlySpan<System::Byte> source, Span<System::Byte> destination, System::Formats::Asn1::AsnEncodingRules ruleSet, System::Formats::Asn1::Asn1Tag expectedTag, [Runtime::InteropServices::Out] int % bytesConsumed, [Runtime::InteropServices::Out] int % bytesWritten);
public static bool TryReadCharacterStringBytes (ReadOnlySpan<byte> source, Span<byte> destination, System.Formats.Asn1.AsnEncodingRules ruleSet, System.Formats.Asn1.Asn1Tag expectedTag, out int bytesConsumed, out int bytesWritten);
static member TryReadCharacterStringBytes : ReadOnlySpan<byte> * Span<byte> * System.Formats.Asn1.AsnEncodingRules * System.Formats.Asn1.Asn1Tag * int * int -> bool
Public Shared Function TryReadCharacterStringBytes (source As ReadOnlySpan(Of Byte), destination As Span(Of Byte), ruleSet As AsnEncodingRules, expectedTag As Asn1Tag, ByRef bytesConsumed As Integer, ByRef bytesWritten As Integer) As Boolean

参数

source
ReadOnlySpan<Byte>

包含编码数据的缓冲区。

destination
Span<Byte>

要写入的缓冲区。

ruleSet
AsnEncodingRules

解释数据时要使用的编码约束。

expectedTag
Asn1Tag

读取前要检查的标记。

bytesConsumed
Int32

此方法返回时,为编码值的字节总数。 该参数未经初始化即被处理。

bytesWritten
Int32

成功后,将收到已写入 destination 的字节数。

返回

如果 destination 足以接收位未处理字符串的值,则为 true;否则为 false

例外

未定义ruleSet

下一个值没有正确的标记。

-或-

长度编码在当前编码规则下无效。

-或-

这些内容在当前编码规则下无效。

expectedTagTagClassUniversal,但 expectedTag不是TagValue 字符串标记类型。

-或-

destination 重叠 source

注解

此方法不确定字符串是否仅使用编码定义的字符。

适用于