Partilhar via


Base64Url.DecodeFromUtf8InPlace(Span<Byte>) Método

Definição

Decodifica o intervalo de texto codificado em UTF-8 em Base64Url em dados binários, in-loco.

A saída binária decodificada é menor do que os dados de texto contidos na entrada (a operação esvazia os dados).

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

Parâmetros

buffer
Span<Byte>

O intervalo de entrada que contém os dados de texto base 64 que precisam ser decodificados.

Retornos

O número de bytes gravados em buffer. Isso pode ser usado para fatiar a saída para chamadas subsequentes, se necessário.

Exceções

buffer contém um caractere Base64Url inválido,

mais de dois caracteres de preenchimento ou um caractere de espaço não branco entre os caracteres de preenchimento.

Comentários

Como o preenchimento é opcional para Base64Url, o comprimento buffer não necessário para ser um múltiplo de 4.

Se o comprimento buffer não for um múltiplo de 4, os restantes serão decodificados adequadamente:

– Restante de 3 bytes – decodificados em dados de 2 bytes, a decodificação é bem-sucedida.

- Restante de 2 bytes - decodificados em 1 dados de byte. A decodificação é bem-sucedida.

- O restante de 1 byte - é uma entrada inválida, causa FormatException.

Aplica-se a