AsnDecoder.ReadEncodedValue 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
使用指定的编码规则在 source
缓冲区的开头查找编码值的内容范围。
public:
static System::Formats::Asn1::Asn1Tag ReadEncodedValue(ReadOnlySpan<System::Byte> source, System::Formats::Asn1::AsnEncodingRules ruleSet, [Runtime::InteropServices::Out] int % contentOffset, [Runtime::InteropServices::Out] int % contentLength, [Runtime::InteropServices::Out] int % bytesConsumed);
public static System.Formats.Asn1.Asn1Tag ReadEncodedValue (ReadOnlySpan<byte> source, System.Formats.Asn1.AsnEncodingRules ruleSet, out int contentOffset, out int contentLength, out int bytesConsumed);
static member ReadEncodedValue : ReadOnlySpan<byte> * System.Formats.Asn1.AsnEncodingRules * int * int * int -> System.Formats.Asn1.Asn1Tag
Public Shared Function ReadEncodedValue (source As ReadOnlySpan(Of Byte), ruleSet As AsnEncodingRules, ByRef contentOffset As Integer, ByRef contentLength As Integer, ByRef bytesConsumed As Integer) As Asn1Tag
参数
- source
- ReadOnlySpan<Byte>
包含编码数据的缓冲区。
- ruleSet
- AsnEncodingRules
解释数据时要使用的编码约束。
- contentOffset
- Int32
此方法返回时,为内容有效负载相对于 source
起始位置的偏移量。
该参数未经初始化即被处理。
- contentLength
- Int32
此方法返回时,为内容有效负载中的字节数(可能为 0)。 该参数未经初始化即被处理。
- bytesConsumed
- Int32
此方法返回时,为编码值的字节总数。 该参数未经初始化即被处理。
返回
标识内容的标记。
例外
未定义 ruleSet
。
source
不表示在指定编码规则下编码的值。
注解
此方法很少对内容执行验证。 如果编码值使用一定长度,则根本不检查内容。 如果编码值使用无限长,则仅在必要时检查内容以确定相关内容结尾标记的位置。
当编码值使用无限期长度时,bytesConsumed
该值将大于 和 的总和contentOffset
contentLength
,以考虑内容结束标记。