Udostępnij za pośrednictwem


Base64Url.DecodeFromUtf8 Metoda

Definicja

Przeciążenia

DecodeFromUtf8(ReadOnlySpan<Byte>)

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

DecodeFromUtf8(ReadOnlySpan<Byte>, Span<Byte>)

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

DecodeFromUtf8(ReadOnlySpan<Byte>, Span<Byte>, Int32, Int32, Boolean)

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

DecodeFromUtf8(ReadOnlySpan<Byte>)

Źródło:
Base64UrlDecoder.cs

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

public:
 static cli::array <System::Byte> ^ DecodeFromUtf8(ReadOnlySpan<System::Byte> source);
public static byte[] DecodeFromUtf8 (ReadOnlySpan<byte> source);
static member DecodeFromUtf8 : ReadOnlySpan<byte> -> byte[]
Public Shared Function DecodeFromUtf8 (source As ReadOnlySpan(Of Byte)) As Byte()

Parametry

source
ReadOnlySpan<Byte>

Zakres danych wejściowych zawierający zakodowany w formacie UTF-8 tekst w elemencie Base64Url, który musi zostać zdekodowany.

Zwraca

Byte[]

>tablica bajtów zawierająca wynik operacji dekodowania.

Wyjątki

source zawiera nieprawidłowy znak Base64Url,

więcej niż dwa znaki wypełnienia lub znak inny niż biały znak między znakami dopełnienia.

Dotyczy

DecodeFromUtf8(ReadOnlySpan<Byte>, Span<Byte>)

Źródło:
Base64UrlDecoder.cs

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

public:
 static int DecodeFromUtf8(ReadOnlySpan<System::Byte> source, Span<System::Byte> destination);
public static int DecodeFromUtf8 (ReadOnlySpan<byte> source, Span<byte> destination);
static member DecodeFromUtf8 : ReadOnlySpan<byte> * Span<byte> -> int
Public Shared Function DecodeFromUtf8 (source As ReadOnlySpan(Of Byte), destination As Span(Of Byte)) As Integer

Parametry

source
ReadOnlySpan<Byte>

Zakres danych wejściowych zawierający zakodowany w formacie UTF-8 tekst w elemencie Base64Url, który musi zostać zdekodowany.

destination
Span<Byte>

Zakres danych wyjściowych, który zawiera wynik operacji, tj. zdekodowane dane binarne.

Zwraca

Liczba bajtów zapisanych w destination. Może to służyć do fragmentowania danych wyjściowych dla kolejnych wywołań, w razie potrzeby.

Wyjątki

Bufor w destination jest zbyt mały, aby przechowywać zakodowane dane wyjściowe.

source zawiera nieprawidłowy znak Base64Url,

więcej niż dwa znaki wypełnienia lub znak inny niż biały znak między znakami dopełnienia.

Uwagi

Ponieważ dopełnienie jest opcjonalne dla wartości Base64Url, długość source nie jest wymagana do wielokrotności 4.

Jeśli długość source nie jest wielokrotną 4 resztą, odpowiednio zdekodowane:

- Pozostała część 3 bajtów — dekodowana do 2 bajtów danych, dekodowanie powiedzie się.

- Pozostała część 2 bajtów — zdekodowana do 1 bajtów danych. dekodowanie powiedzie się.

- Pozostała część 1 bajtu — jest nieprawidłowym wejściem, powoduje wyjątek FormatException.

Dotyczy

DecodeFromUtf8(ReadOnlySpan<Byte>, Span<Byte>, Int32, Int32, Boolean)

Źródło:
Base64UrlDecoder.cs

Dekoduje zakres zakodowanego tekstu UTF-8 reprezentowanego jako Base64Url do danych binarnych.

public static System.Buffers.OperationStatus DecodeFromUtf8 (ReadOnlySpan<byte> source, Span<byte> destination, out int bytesConsumed, out int bytesWritten, bool isFinalBlock = true);
static member DecodeFromUtf8 : ReadOnlySpan<byte> * Span<byte> * int * int * bool -> System.Buffers.OperationStatus
Public Shared Function DecodeFromUtf8 (source As ReadOnlySpan(Of Byte), destination As Span(Of Byte), ByRef bytesConsumed As Integer, ByRef bytesWritten As Integer, Optional isFinalBlock As Boolean = true) As OperationStatus

Parametry

source
ReadOnlySpan<Byte>

Zakres danych wejściowych zawierający zakodowany w formacie UTF-8 tekst w elemencie Base64Url, który musi zostać zdekodowany.

destination
Span<Byte>

Zakres danych wyjściowych, który zawiera wynik operacji, tj. zdekodowane dane binarne.

bytesConsumed
Int32

Gdy ta metoda zwraca, zawiera liczbę bajtów wejściowych użytych podczas operacji. Może to służyć do fragmentowania danych wejściowych dla kolejnych wywołań, w razie potrzeby. Ten parametr jest traktowany jako niezainicjowany.

bytesWritten
Int32

Gdy ta metoda zwróci wartość , zawiera liczbę bajtów zapisanych w zakresie danych wyjściowych. Może to służyć do fragmentowania danych wyjściowych dla kolejnych wywołań, w razie potrzeby. Ten parametr jest traktowany jako niezainicjowany.

isFinalBlock
Boolean

true, gdy zakres danych wejściowych zawiera całe dane do zakodowania; false, gdy może wystąpić więcej danych,

na przykład podczas wywoływania w pętli. Wywołania z false należy wykonać za pomocą innego wywołania, w którym ten parametr jest true wywołania. Wartość domyślna to true.

Zwraca

Jedna z wartości wyliczenia wskazująca powodzenie lub niepowodzenie operacji.

Uwagi

Ponieważ dopełnienie jest opcjonalne dla parametru Base64Url, długość source nie jest wymagana do wielokrotności 4, nawet jeśli isFinalBlock jest true.

Jeśli długość source nie jest wielokrotna 4 i isFinalBlock jest true pozostałe odpowiednio zdekodowane:

- Pozostała część 3 bajtów — dekodowana do 2 bajtów danych, dekodowanie powiedzie się.

- Pozostała część 2 bajtów — zdekodowana do 1 bajtów danych. dekodowanie powiedzie się.

- Pozostała część 1 bajtu — spowoduje wynik OperationStatus.InvalidData.

Dotyczy