次の方法で共有


AsnDecoder.TryReadBitString メソッド

定義

指定したエンコード規則に基づいて、指定したタグを持つ source から destination にビット文字列値のコピーを試みます。

public static bool TryReadBitString (ReadOnlySpan<byte> source, Span<byte> destination, System.Formats.Asn1.AsnEncodingRules ruleSet, out int unusedBitCount, out int bytesConsumed, out int bytesWritten, System.Formats.Asn1.Asn1Tag? expectedTag = default);
static member TryReadBitString : ReadOnlySpan<byte> * Span<byte> * System.Formats.Asn1.AsnEncodingRules * int * int * int * Nullable<System.Formats.Asn1.Asn1Tag> -> bool
Public Shared Function TryReadBitString (source As ReadOnlySpan(Of Byte), destination As Span(Of Byte), ruleSet As AsnEncodingRules, ByRef unusedBitCount As Integer, ByRef bytesConsumed As Integer, ByRef bytesWritten As Integer, Optional expectedTag As Nullable(Of Asn1Tag) = Nothing) As Boolean

パラメーター

source
ReadOnlySpan<Byte>

エンコードされたデータを含むバッファー。

destination
Span<Byte>

書き込むバッファー。

ruleSet
AsnEncodingRules

データを解釈するときに使用するエンコード制約。

unusedBitCount
Int32

成功すると、ライターによって "未使用" として報告された最後のバイトのビット数を受け取ります。 このパラメーターは初期化前として処理されます。

bytesConsumed
Int32

このメソッドが返されるときに、エンコードされた値の合計バイト数。 このパラメーターは初期化前として処理されます。

bytesWritten
Int32

このメソッドから制御が戻るときに、destination に書き込まれた合計バイト数。 このパラメーターは初期化前として処理されます。

expectedTag
Nullable<Asn1Tag>

読み取る前にチェックするタグ、または既定のタグ (Universal 3) の場合は null

戻り値

destination がビット文字列の値を受け取るのに十分な大きさの場合は true。それ以外の場合は false

例外

ruleSet が定義されていません。

次の値に正しいタグがありません。

または

長さのエンコードは、現在のエンコード規則では無効です。

または

コンテンツは、現在のエンコード規則では無効です。

expectedTagTagClassUniversalですがexpectedTagTagValue、 が メソッドに対して正しくありません。

または

destination は と source重なります。

注釈

値によって unusedBitCount "未使用" として報告される最後のバイト内の最下位ビットは、エンコードされた表現の値に関係なく、未設定ビットとしてにコピー destination されます。

適用対象