Comment convertir du Base64 en décimal
- Collez le Base64 dans Entrée · Base64. Les espaces, les sauts de ligne, les caractères URL-safe et un remplissage manquant sont acceptés.
- Les valeurs des octets apparaissent dans Sortie · Octets en décimal.
- Choisissez le Séparateur sous la sortie : Espace,
,,,ou Nouvelle ligne. - Utilisez Copier la sortie ou Télécharger pour récupérer la liste. Le sélecteur Octets en décimal → Base64, ou la page Décimal en Base64, inverse la conversion.
Exemples
| Base64 | Octets en décimal | Ce que c’est |
|---|---|---|
SGkh | 72 105 33 | le texte Hi! |
SGkh/w== | 72 105 33 255 | Hi! plus un octet 0xff |
AQA= | 1 0 | deux octets, 256 en nombre big-endian sur 16 bits |
AAAA | 0 0 0 | trois octets nuls |
//// | 255 255 255 | trois octets avec tous les bits à 1 |
fwAAAQ== | 127 0 0 1 | une adresse IPv4, 127.0.0.1, sous forme de quatre octets bruts |
La dernière ligne montre un usage pratique : les formats binaires stockent les adresses IPv4 sur quatre octets, et la liste décimale correspond à la notation pointée habituelle, sans les points.
Valeurs d’octets ou un seul grand nombre
Ce convertisseur liste des octets. Lire toute la valeur Base64 comme un seul entier donne une autre réponse, qui dépend de l’ordre des octets : les deux octets 1 0 valent 256 lus en big-endian et 1 lus en little-endian. La bonne lecture dépend du format qui a produit les données : la conversion a donc sa place dans du code, où vous pouvez la préciser :
import base64
data = base64.b64decode("AQA=")
list(data) # [1, 0]
int.from_bytes(data, "big") # 256
int.from_bytes(data, "little") # 1
Il en va de même pour du Base64 qui contient un compteur 32 bits, un horodatage ou un grand identifiant : la liste décimale donne les octets, et int.from_bytes ou DataView en JavaScript donne le nombre.
Où l’on utilise des listes d’octets en décimal
- JSON. Certains sérialiseurs écrivent les données binaires sous forme de tableau de nombres.
JSON.stringify(Buffer.from("Hi!"))en Node donne{"type":"Buffer","data":[72,105,33]}. Avec le séparateur,et des crochets, vous obtenez la même forme. - Python et tableurs.
list(b)en Python affiche des valeurs décimales, et une colonne de nombres (séparateur Nouvelle ligne) se colle directement dans un tableur. - Microcontrôleurs et moniteurs série. Le code Arduino et beaucoup d’outils série affichent les octets en décimal. Pour une déclaration de tableau typée en C ou dans un autre langage, Base64 en tableau d’octets écrit le littéral complet.
Si vous comptez lire les octets plutôt que les coller quelque part, l’hexadécimal est en général plus clair, car chaque octet fait exactement deux caractères : essayez Base64 en hex.
Base64 en décimal dans le code
import base64
list(base64.b64decode("SGkh/w==")) # [72, 105, 33, 255]
Array.from(Buffer.from("SGkh/w==", "base64")).join(", "); // '72, 105, 33, 255'
Dans un navigateur sans Buffer, Array.from(atob(s), c => c.charCodeAt(0)) donne les mêmes nombres. Les pages Python et JavaScript approfondissent le décodage.
FAQ
Que signifie « décimal » dans Base64 en décimal ?
Chaque octet décodé écrit comme un nombre ordinaire en base 10. Un octet va de 0 à 255 : la sortie est donc une liste de nombres dans cette plage, un par octet.
Comment convertir du Base64 en un seul nombre plutôt qu'en liste ?
Lisez les octets comme un seul entier dans du code. En Python, int.from_bytes(base64.b64decode(s), "big") ; pour AQA=, cela donne 256, alors que cette page liste les octets 1 0.
Comment obtenir un tableau JSON d'octets à partir de Base64 ?
Réglez Séparateur sur , et entourez le résultat de crochets. SGkh devient [72, 105, 33], qui se lit comme un tableau JSON.
Pourquoi Java affiche-t-il -1 là où cette page affiche 255 ?
Le type byte de Java est signé : les octets de 128 à 255 s’affichent donc de −128 à −1. Les bits sont identiques. Utilisez b & 0xff en Java pour obtenir la valeur 0–255 affichée ici.