다음을 통해 공유


AsnDecoder.ReadEncodedValue 메서드

정의

지정된 인코딩 규칙을 사용하여 source 버퍼의 시작 부분에서 인코딩된 값의 콘텐츠 범위를 찾습니다.

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

매개 변수

source
ReadOnlySpan<Byte>

인코딩된 데이터를 포함하는 버퍼입니다.

ruleSet
AsnEncodingRules

데이터를 해석할 때 사용할 인코딩 제약 조건입니다.

contentOffset
Int32

이 메서드가 반환될 때 source의 시작에 상대적인 콘텐츠 페이로드의 오프셋입니다. 이 매개 변수는 초기화되지 않은 것으로 처리됩니다.

contentLength
Int32

이 메서드가 반환될 때 콘텐츠 페이로드의 바이트 수(0일 수 있음)입니다. 이 매개 변수는 초기화되지 않은 것으로 처리됩니다.

bytesConsumed
Int32

이 메서드가 반환될 때 인코딩된 값의 총 바이트 수입니다. 이 매개 변수는 초기화되지 않은 것으로 처리됩니다.

반환

콘텐츠를 식별하는 태그입니다.

예외

ruleSet이 정의되어 있지 않습니다.

source는 지정된 인코딩 규칙에 따라 인코딩된 값을 나타내지 않습니다.

설명

이 메서드는 내용에 대한 유효성 검사를 거의 수행하지 않습니다. 인코딩된 값이 명확한 길이를 사용하는 경우 콘텐츠는 전혀 검사되지 않습니다. 인코딩된 값이 무기한 길이를 사용하는 경우 콘텐츠는 필요한 경우에만 검사하여 관련 콘텐츠 끝 표식의 위치를 확인합니다.

인코딩된 값이 무한 길이를 사용하는 경우 값은 bytesConsumed 의 합계 contentOffset 보다 커지고 contentLength 콘텐츠 끝 표식을 고려합니다.

적용 대상