ValueAsnReader Struktura

Definice

Představuje stavovou čtečku určenou jen pro čtení s kódováním BER, kódovanými cerem nebo daty ASN.1 s kódováním DER.

public value class ValueAsnReader
public ref struct ValueAsnReader
type ValueAsnReader = struct
Public Structure ValueAsnReader
Dědičnost
ValueAsnReader

Konstruktory

Name Description
ValueAsnReader(ReadOnlySpan<Byte>, AsnEncodingRules, AsnReaderOptions)

ValueAsnReader Vytvořte nad data rámec s danou sadou pravidel.

Vlastnosti

Name Description
HasData

Získá hodnotu, která označuje, zda čtenář má zbývající data k dispozici ke zpracování.

RuleSet

Získá pravidla kódování používané tímto čtenářem.

Metody

Name Description
PeekContentBytes()

ReadOnlySpan<T> Získá zobrazení obsahu oktety (bajty) další kódované hodnoty bez postupu čtenáře.

PeekEncodedValue()

ReadOnlySpan<T> Získá zobrazení další kódované hodnoty bez postupu čtenáře. Pro kódování s neomezenou délkou to zahrnuje značku Konec obsahu.

PeekTag()

Načte zakódovanou značku na další pozici dat bez toho, aby čtečka pokročila.

ReadBitString(Int32, Nullable<Asn1Tag>)

Přečte další hodnotu jako BIT STRING se zadanou značkou, která vrací hodnotu v bajtovém poli.

ReadBoolean(Nullable<Asn1Tag>)

Přečte další hodnotu jako logickou hodnotu se zadanou značkou.

ReadCharacterString(UniversalTagNumber, Nullable<Asn1Tag>)

Přečte další hodnotu jako řetězec znaků se zadaným typem značky a kódování a vrátí dekódovanou hodnotu jako řetězec.

ReadEncodedValue()

ReadOnlySpan<T> Získejte přehled o další zakódované hodnotě a předepište čtenáře. Pro kódování s neomezenou délkou to zahrnuje značku Konec obsahu.

ReadEnumeratedBytes(Nullable<Asn1Tag>)

Přečte další hodnotu jako výčet se zadanou značkou a vrátí obsah jako ReadOnlySpan<T> původní data.

ReadEnumeratedValue(Type, Nullable<Asn1Tag>)

Přečte další hodnotu jako výčet se zadanou značkou a převede ji na výčt bez [FlagsAttribute] určenou enumType.

ReadEnumeratedValue<TEnum>(Nullable<Asn1Tag>)

Přečte další hodnotu jako výčet se zadanou značkou a převede ji na výčt bez [FlagsAttribute] určenou TEnum.

ReadGeneralizedTime(Nullable<Asn1Tag>)

Přečte další hodnotu jako GeneralizedTime se zadanou značkou.

ReadInteger(Nullable<Asn1Tag>)

Přečte další hodnotu jako celé číslo se zadanou značkou.

ReadIntegerBytes(Nullable<Asn1Tag>)

Přečte další hodnotu jako celé číslo se zadanou značkou a vrátí obsah jako ReadOnlySpan<T> původní data.

ReadNamedBitList(Nullable<Asn1Tag>)

Přečte další hodnotu jako NamedBitList se zadanou značkou.

ReadNamedBitListValue(Type, Nullable<Asn1Tag>)

Přečte další hodnotu jako NamedBitList se zadanou značkou a převede ji na výčet [FlagsAttribute] určený flagsEnumType.

ReadNamedBitListValue<TFlagsEnum>(Nullable<Asn1Tag>)

Přečte další hodnotu jako NamedBitList se zadanou značkou a převede ji na výčet [FlagsAttribute] určený TFlagsEnum.

ReadNull(Nullable<Asn1Tag>)

Přečte další hodnotu jako HODNOTU NULL se zadanou značkou.

ReadObjectIdentifier(Nullable<Asn1Tag>)

Přečte další hodnotu jako IDENTIFIKÁTOR OBJEKTu se zadanou značkou a vrátí hodnotu v řetězci formátu desítkového tečkovaného formátu.

ReadOctetString(Nullable<Asn1Tag>)

Přečte další hodnotu jako ŘETĚZEC OCTET se značkou UNIVERSAL 4 a vrátí hodnotu v bajtovém poli.

ReadSequence(Nullable<Asn1Tag>)

Přečte další hodnotu jako SEQUENCE nebo SEQUENCE-OF se zadanou značkou a vrátí výsledek jako nový čtenář umístěný na první hodnotě v posloupnosti (nebo pomocí HasData == false).

ReadSetOf(Boolean, Nullable<Asn1Tag>)

Přečte další hodnotu jako SET-OF se zadanou značkou a vrátí výsledek jako nový čtenář umístěný na první hodnotě v sadě (nebo pomocí HasData == false).

ReadSetOf(Nullable<Asn1Tag>)

Přečte další hodnotu jako SET-OF se zadanou značkou a vrátí výsledek jako nový čtenář umístěný na první hodnotě v sadě (nebo sHasData == false), pomocí SkipSetSortOrderVerification hodnoty z konstruktoru (výchozí).false

ReadUtcTime(Int32, Nullable<Asn1Tag>)

Přečte další hodnotu jako UTCTime se zadanou značkou.

ReadUtcTime(Nullable<Asn1Tag>)

Přečte další hodnotu jako UTCTime se zadanou značkou s použitím UtcTimeTwoDigitYearMax hodnoty z možností předaných konstruktoru (s výchozím nastavením 2049).

ThrowIfNotEmpty()

Vyvolá standardizovaný AsnContentException , pokud čtenář má zbývající data, nebo neprovede žádnou funkci, pokud HasData se vrátí false.

TryReadBitString(Span<Byte>, Int32, Int32, Nullable<Asn1Tag>)

Přečte další hodnotu jako BIT STRING se zadanou značkou a zkopíruje hodnotu do zadané cílové vyrovnávací paměti.

TryReadCharacterString(Span<Char>, UniversalTagNumber, Int32, Nullable<Asn1Tag>)

Přečte další hodnotu jako řetězec znaků se zadaným typem značky a kódování a zkopíruje dekódovanou hodnotu do zadané cílové vyrovnávací paměti.

TryReadCharacterStringBytes(Span<Byte>, Asn1Tag, Int32)

Přečte další hodnotu jako řetězec znaků se zadanou značkou a zkopíruje nezpracované bajty do zadané cílové vyrovnávací paměti.

TryReadInt32(Int32, Nullable<Asn1Tag>)

Pokusí se přečíst další hodnotu jako celé číslo se zadanou značkou jako podepsanou 32bitovou hodnotou.

TryReadInt64(Int64, Nullable<Asn1Tag>)

Pokusí se přečíst další hodnotu jako celé číslo se zadanou značkou jako podepsanou 64bitovou hodnotou.

TryReadOctetString(Span<Byte>, Int32, Nullable<Asn1Tag>)

Přečte další hodnotu jako ŘETĚZEC OCTET se zadanou značkou a zkopíruje hodnotu do zadané cílové vyrovnávací paměti.

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

Přečte další hodnotu jako BIT STRING se zadanou značkou a vrátí obsah jako ReadOnlySpan<T> původní data.

TryReadPrimitiveCharacterStringBytes(Asn1Tag, ReadOnlySpan<Byte>)

Přečte další hodnotu jako znak se zadanou značkou a vrátí obsah jako nezpracovaný ReadOnlySpan<T> nad původními daty.

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

Pokusí se přečíst další hodnotu jako ŘETĚZEC OCTET se zadanou značkou, která vrací obsah jako ReadOnlySpan<T> původní data.

TryReadUInt32(UInt32, Nullable<Asn1Tag>)

Pokusí se přečíst další hodnotu jako celé číslo se zadanou značkou jako nepodepsanou 32bitovou hodnotou.

TryReadUInt64(UInt64, Nullable<Asn1Tag>)

Pokusí se přečíst další hodnotu jako celé číslo se zadanou značkou jako nepodepsanou 64bitovou hodnotou.

Platí pro