Bagikan melalui


AsnDecoder.ReadEncodedValue Metode

Definisi

Menemukan rentang konten untuk nilai yang dikodekan di awal source buffer menggunakan aturan pengodean yang ditentukan.

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

Parameter

source
ReadOnlySpan<Byte>

Buffer yang berisi data yang dikodekan.

ruleSet
AsnEncodingRules

Batasan pengodean untuk digunakan saat menginterpretasikan data.

contentOffset
Int32

Ketika metode ini kembali, offset payload konten relatif terhadap awal source. Parameter ini diperlakukan sebagai tidak diinisialisasi.

contentLength
Int32

Ketika metode ini kembali, jumlah byte dalam payload konten (yang mungkin 0). Parameter ini diperlakukan sebagai tidak diinisialisasi.

bytesConsumed
Int32

Ketika metode ini kembali, jumlah total byte untuk nilai yang dikodekan. Parameter ini diperlakukan sebagai tidak diinisialisasi.

Mengembalikan

Tag yang mengidentifikasi konten.

Pengecualian

ruleSet tidak didefinisikan.

source tidak mewakili nilai yang dikodekan di bawah aturan pengodean yang ditentukan.

Keterangan

Metode ini melakukan validasi yang sangat sedikit pada konten. Jika nilai yang dikodekan menggunakan panjang yang pasti, konten tidak diperiksa sama sekali. Jika nilai yang dikodekan menggunakan panjang yang tidak terbatas, konten hanya diperiksa seperlunya untuk menentukan lokasi penanda akhir konten yang relevan.

Ketika nilai yang dikodekan menggunakan panjang yang tidak terbatas, bytesConsumed nilai akan lebih besar dari jumlah contentOffset dan contentLength untuk memperhitungkan penanda akhir konten.

Berlaku untuk