AsnWriter 类

定义

BER 编码、CER 和 DER 编码 ASN.1 数据的编写器。

public ref class AsnWriter sealed
public sealed class AsnWriter
type AsnWriter = class
Public NotInheritable Class AsnWriter
继承
AsnWriter

构造函数

AsnWriter(AsnEncodingRules)

使用一组给定的编码规则新建 AsnWriter

AsnWriter(AsnEncodingRules, Int32)

使用给定的编码规则集和初始容量初始化 的新实例 AsnWriter

属性

RuleSet

获取此编写器使用的编码规则。

方法

CopyTo(AsnWriter)

将此编写器的值复制到另一个编写器。

Encode()

返回包含编码值的新数组。

Encode(Span<Byte>)

将数据的已编码表示形式写入 destination

EncodedValueEquals(AsnWriter)

确定 Encode() 是否生成与 other 相同的输出。

EncodedValueEquals(ReadOnlySpan<Byte>)

确定 Encode() 是否生成与 other 相同的输出。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetEncodedLength()

获取将由 TryEncode(Span<Byte>, Int32) 写入的字节数。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
PopOctetString(Nullable<Asn1Tag>)

指示已关闭带有通用 4 标记的公开八进制字符串,以将编写器返回到父上下文。

PopSequence(Nullable<Asn1Tag>)

指示已关闭带有特定标记的公开 Sequence,以将编写器返回到父上下文。

PopSetOf(Nullable<Asn1Tag>)

指示已关闭带有特定标记的公开 Set-Of,以将编写器返回到父上下文。

PushOctetString(Nullable<Asn1Tag>)

开始写入带有指定标记的八进制字符串值。

PushSequence(Nullable<Asn1Tag>)

开始写入带有指定标记的 Sequence。

PushSetOf(Nullable<Asn1Tag>)

开始写入带有指定标记的 Set-Of。

Reset()

重置编写器使其不包含数据,且未释放资源。

ToString()

返回表示当前对象的字符串。

(继承自 Object)
TryEncode(Span<Byte>, Int32)

尝试将数据的已编码表示形式写入 destination

WriteBitString(ReadOnlySpan<Byte>, Int32, Nullable<Asn1Tag>)

写入带有指定标记的位字符串值。

WriteBoolean(Boolean, Nullable<Asn1Tag>)

写入带有指定标记的布尔值。

WriteCharacterString(UniversalTagNumber, ReadOnlySpan<Char>, Nullable<Asn1Tag>)

使用指定的编码类型,以及与编码类型相对应的指定标记写入提供的字符串。

WriteCharacterString(UniversalTagNumber, String, Nullable<Asn1Tag>)

使用指定的编码类型,以及与编码类型相对应的指定标记写入提供的字符串。

WriteEncodedValue(ReadOnlySpan<Byte>)

写入已编码的单个值。

WriteEnumeratedValue(Enum, Nullable<Asn1Tag>)

将一个非 [FlagsAttribute] 枚举值作为带“通用 10”标记的枚举写入。

WriteEnumeratedValue<TEnum>(TEnum, Nullable<Asn1Tag>)

将一个非 [FlagsAttribute] 枚举值作为带“通用 10”标记的枚举写入。

WriteGeneralizedTime(DateTimeOffset, Boolean, Nullable<Asn1Tag>)

将提供的 DateTimeOffset 写入为带有指定的“通用 24”的 GeneralizedTime,可以选择排除秒的小数部分。

WriteInteger(BigInteger, Nullable<Asn1Tag>)

写入带有指定标记的整数值。

WriteInteger(Int64, Nullable<Asn1Tag>)

写入带有指定标记的整数值。

WriteInteger(ReadOnlySpan<Byte>, Nullable<Asn1Tag>)

写入带有指定标记的整数值。

WriteInteger(UInt64, Nullable<Asn1Tag>)

写入带有指定标记的整数值。

WriteIntegerUnsigned(ReadOnlySpan<Byte>, Nullable<Asn1Tag>)

写入带有指定标记的整数值。

WriteNamedBitList(BitArray, Nullable<Asn1Tag>)

将位数组值作为带有指定标记的 NamedBitList 写入。

WriteNamedBitList(Enum, Nullable<Asn1Tag>)

将 [FlagsAttribute] 枚举值作为带有指定标记的 NamedBitList 写入。

WriteNamedBitList<TEnum>(TEnum, Nullable<Asn1Tag>)

将 [FlagsAttribute] 枚举值作为带有指定标记的 NamedBitList 写入。

WriteNull(Nullable<Asn1Tag>)

使用指定标记写入 NULL。

WriteObjectIdentifier(ReadOnlySpan<Char>, Nullable<Asn1Tag>)

使用指定标记写入对象标识符。

WriteObjectIdentifier(String, Nullable<Asn1Tag>)

使用指定标记写入对象标识符。

WriteOctetString(ReadOnlySpan<Byte>, Nullable<Asn1Tag>)

写入带有指定标记的八进制字符串值。

WriteUtcTime(DateTimeOffset, Int32, Nullable<Asn1Tag>)

将提供的值作为带有指定标记的 UTCTime 写入,前提是该年份在允许范围内。

WriteUtcTime(DateTimeOffset, Nullable<Asn1Tag>)

将提供的值作为带有指定标记的 UTCTime 写入,接受两位数年份在上下文中有效。

适用于