Condividi tramite


Base64Url.DecodeFromUtf8InPlace(Span<Byte>) Metodo

Definizione

Decodifica l'intervallo di testo con codifica UTF-8 in Base64Url in dati binari sul posto.

L'output binario decodificato è inferiore ai dati di testo contenuti nell'input (l'operazione deflaffa i dati).

public:
 static int DecodeFromUtf8InPlace(Span<System::Byte> buffer);
public static int DecodeFromUtf8InPlace (Span<byte> buffer);
static member DecodeFromUtf8InPlace : Span<byte> -> int
Public Shared Function DecodeFromUtf8InPlace (buffer As Span(Of Byte)) As Integer

Parametri

buffer
Span<Byte>

Intervallo di input che contiene i dati di testo di base 64 che devono essere decodificati.

Restituisce

Numero di byte scritti in buffer. Può essere usato per sezionare l'output per le chiamate successive, se necessario.

Eccezioni

buffer contiene un carattere Base64Url non valido,

più di due caratteri di spaziatura interna o uno spazio vuoto tra i caratteri di riempimento.

Commenti

Poiché la spaziatura interna è facoltativa per Base64Url, la lunghezza buffer non deve essere un multiplo di 4.

Se la lunghezza buffer non è un multiplo di 4 i rimanenti decodificati di conseguenza:

- Resto di 3 byte: decodificato in 2 byte di dati, decodifica riuscita.

- Resto di 2 byte: decodificato in 1 byte. decodifica riuscita.

- Resto di 1 byte: l'input non è valido, causa l'eccezione FormatException.

Si applica a