Share via


AsnDecoder.TryReadCharacterStringBytes 方法

定義

嘗試在指定的編碼規則下,從 source 讀取具有所指定標籤的字元字串值,同時將未處理的位元組複製到提供的目的地緩衝區。

public:
 static bool TryReadCharacterStringBytes(ReadOnlySpan<System::Byte> source, Span<System::Byte> destination, System::Formats::Asn1::AsnEncodingRules ruleSet, System::Formats::Asn1::Asn1Tag expectedTag, [Runtime::InteropServices::Out] int % bytesConsumed, [Runtime::InteropServices::Out] int % bytesWritten);
public static bool TryReadCharacterStringBytes (ReadOnlySpan<byte> source, Span<byte> destination, System.Formats.Asn1.AsnEncodingRules ruleSet, System.Formats.Asn1.Asn1Tag expectedTag, out int bytesConsumed, out int bytesWritten);
static member TryReadCharacterStringBytes : ReadOnlySpan<byte> * Span<byte> * System.Formats.Asn1.AsnEncodingRules * System.Formats.Asn1.Asn1Tag * int * int -> bool
Public Shared Function TryReadCharacterStringBytes (source As ReadOnlySpan(Of Byte), destination As Span(Of Byte), ruleSet As AsnEncodingRules, expectedTag As Asn1Tag, ByRef bytesConsumed As Integer, ByRef bytesWritten As Integer) As Boolean

參數

source
ReadOnlySpan<Byte>

包含編碼資料的緩衝區。

destination
Span<Byte>

要在其中寫入的緩衝區。

ruleSet
AsnEncodingRules

要在解譯資料時使用的編碼條件約束。

expectedTag
Asn1Tag

要在讀取之前檢查的標籤。

bytesConsumed
Int32

當此方法傳回時,編碼值的位元組總數。 這個參數會被視為未初始化。

bytesWritten
Int32

成功時,會收到寫入至 destination 的位元組數。

傳回

如果 destination 大到足以接收未處理字元字串的值,則為 true,否則為 false

例外狀況

未定義ruleSet

下一個值沒有正確的標記。

-或-

長度編碼在目前的編碼規則下無效。

-或-

內容在目前的編碼規則下無效。

expectedTagTagClassUniversal,但 expectedTagTagValue 不是字元字串標記類型。

-或-

destination 重疊 source

備註

這個方法不會判斷字串是否只使用編碼所定義的字元。

適用於