Como converter decimal para Base64
- Cole os números em Entrada · Bytes decimais. Cada número é um byte.
- O Base64 aparece em Saída · Base64 enquanto você digita.
- Abaixo da saída, Preenchimento (=) mantém ou remove o
=final, e Quebra de linha divide saídas longas em 64 ou 76 caracteres. - Use Copiar saída ou inverta para Base64 → Bytes decimais para conferir o resultado. Base64 para decimal é a mesma ferramenta no sentido contrário.
Formatos de entrada
| Entrada | Origem | Base64 |
|---|---|---|
72 105 33 | lista simples | SGkh |
[72, 105, 33] | JSON, list(b) do Python | SGkh |
{72, 105, 33} | inicializador C ou Java | SGkh |
72;105;33 | exportações CSV com ; | SGkh |
[72, 105, -1] | Arrays.toString(bytes) do Java | SGn/ |
072 105 | colunas preenchidas com zeros | SGk= |
Números com zeros à esquerda são lidos como decimais, então 072 é 72. Cada valor precisa ser um número inteiro de −128 a 255. Um valor fora dessa faixa interrompe a conversão, e a mensagem diz qual é; uma letra perdida ou um ponto, como em 72.105, é informado com a posição, e Mostrar o seleciona.
Se a lista tiver valores hex como 48 69 21, eles seriam lidos como os decimais 48, 69 e 21 e dariam outro resultado. Use Hex para Base64 nesses casos. Para arrays copiados de código-fonte com valores 0x, casts ou nomes de tipo, Array de bytes para Base64 é a opção certa.
De onde vêm listas de bytes decimais
A maioria das listas de bytes decimais é uma linguagem de programação imprimindo dados binários do seu jeito padrão:
| Onde | O que imprime para Hi! |
|---|---|
list(b"Hi!") do Python | [72, 105, 33] |
JSON.stringify(Buffer.from("Hi!")) do Node.js | {"type":"Buffer","data":[72,105,33]} |
Arrays.toString("Hi!".getBytes()) do Java | [72, 105, 33] |
Array.from(new TextEncoder().encode("Hi!")) do JavaScript | [ 72, 105, 33 ] |
Converter uma lista dessas para Base64 dá uma string compacta para colocar em um arquivo de configuração, uma fixture de teste ou uma requisição de API. 72, 105, 33 tem 11 caracteres; o Base64 SGkh tem 4.
Decimal para Base64 no código
import base64
base64.b64encode(bytes([72, 105, 33])).decode() # 'SGkh'
bytes() lança ValueError: bytes must be in range(0, 256) com valores negativos. Converta antes os bytes com sinal no estilo Java com [v & 0xff for v in values].
Buffer.from([72, 105, 33]).toString("base64"); // 'SGkh'
O Buffer.from aplica módulo 256 a cada valor sem reclamar, então -1 vira 255 e 256 vira 0 em silêncio. A ferramenta acima recusa 256, o que pega listas que na verdade não são bytes. Veja as páginas de Python e Node.js para mais.
Números que não são bytes
Um único número grande, como um ID de usuário, um timestamp ou um contador, não tem uma forma Base64 única até você escolher quantos bytes ele ocupa e em que ordem. O tempo Unix 1700000000 como valor big-endian de 4 bytes é ZVPxAA==; com 8 bytes, é AAAAAGVT8QA=. Escolha o layout que o sistema de destino espera e codifique no código; esta página rejeita de propósito valores acima de 255, para que uma lista de números de 16 ou 32 bits não seja confundida com bytes.
Perguntas frequentes
Dá para converter um número só, como 1000, para Base64?
Não nesta página, porque aqui cada número é um byte e 1000 não cabe em um. Decida quantos bytes e qual ordem de bytes o número deve ter e codifique esses bytes. Em Python, base64.b64encode((1000).to_bytes(2, "big")) dá A+g=.
Quais separadores posso usar entre os números?
Espaços, tabulações, quebras de linha, vírgulas e ponto e vírgula, misturados como quiser. Colchetes, chaves e parênteses são ignorados, então um array JSON ou um inicializador C pode ser colado como está.
Como os números negativos são tratados?
De −1 a −128 são lidos como bytes com sinal, do jeito que Java e Kotlin os imprimem: −1 é 255 e −128 é 128. Qualquer valor abaixo de −128 é erro.
Como converter um array de bytes JSON para Base64?
Cole o array, com os colchetes. Nos objetos {"type":"Buffer","data":[...]} do Node, cole só o array data.