AsnDecoder.TryReadPrimitiveBitString 方法

定义

如果值包含在单个(基元)编码中,则尝试在指定编码规则下,从带有指定标记的 source 中获取位字符串值。

public static bool TryReadPrimitiveBitString (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int unusedBitCount, out ReadOnlySpan<byte> value, out int bytesConsumed, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member TryReadPrimitiveBitString : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * ReadOnlySpan * int * Nullable<System.Formats.Asn1.Asn1Tag> -> bool
Public Shared Function TryReadPrimitiveBitString (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef unusedBitCount As Integer, ByRef value As ReadOnlySpan(Of Byte), ByRef bytesConsumed As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As Boolean

参数

source
ReadOnlySpan<Byte>

包含编码数据的缓冲区。

ruleSet
AsnEncodingRules

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

unusedBitCount
Int32

成功时,将接收由编写器报告为“未使用”的最后一个字节中的位数。 该参数未经初始化即被处理。

value
ReadOnlySpan<Byte>

成功时,将接收与位字符串的值相对应的输入缓冲区的切片。 该参数未经初始化即被处理。

bytesConsumed
Int32

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

expectedTag
Nullable<Asn1Tag>

读取前要检查的标记,或使用 null 作为默认标记(通用 3)。

返回

如果位字符串值具有基元编码,并且所有报告为“未使用”的位均设置为 0,则为 true;否则为 false

例外

未定义ruleSet

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

-或-

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

-或-

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

expectedTagTagClassUniversal,但 expectedTagTagValue 对于 方法,则不正确。

适用于