Base64 Encoder/Decoder
Een gratis online Base64-encoder/decoder voor snelle codering en decodering, met onder andere UTF-8 veilige verwerking, URL-veilige conversie, automatische padding, realtime statistieken en veilige kopieerfunctionaliteit. Biedt meertalige codevoorbeelden, Data URI-generatie, gedetailleerde handleidingen en veelgestelde vragen. Gebruiksvriendelijke interface met bidirectionele invoervulling, toegankelijkheid via het toetsenbord en mobielvriendelijk ontwerp. Geen download nodig, werkt direct in uw browser.
Coderen (Tekst → Base64)
Decoderen (Base64 → Tekst)
Gebruiksaanwijzing
Kenmerken
- UTF-8-veilig: Goede verwerking van niet-ASCII-tekens (verpakt met encodeURIComponent/unescape).
- URL-veilige ondersteuning: Eenknops-schakeling tussen + / en - _, optionele verwijdering van opvulling =.
- Voorbewerking voor decodering: Negeer witruimte, automatische conversie naar URL-veilig en automatische opvulling =.
- Real-time interactie: Invoer wordt direct verwerkt, met weergave van lengte- en groeisnelheidsstatistieken.
- Gebruiksvriendelijkheid: Snelle kopieerfunctie, bidirectionele invulling tussen invoervelden, toegankelijk via toetsenbord, mobielvriendelijk.
- Consistent thema: Geen Tailwind dark:-klassen — volledig gestyled met DaisyUI-thema's.
Wat is Base64?
Base64 is een manier om binaire data om te zetten naar ASCII-tekst, vaak gebruikt om afbeeldingen of bestandsinhoud over tekstgebaseerde protocollen zoals JSON, XML en HTTP te versturen.
Elke 3 bytes worden omgezet naar 4 afdrukbare tekens, wat meestal leidt tot een grootteverhoging van ongeveer 33%.
Standaard Base64 gebruikt A–Z, a–z, 0–9, +, / en het opvulteken =; de URL-veilige variant vervangt + en / door - en _ om onnodige escapings in URL's te voorkomen.
Veelvoorkomende Gebruiksscenario's
- Neem afbeeldingen of kleine bestanden op als Data URI's.
- Verzend binaire data tussen client en server (bijv. versleutelde ciphertexts, gecomprimeerde streams).
- Zet tekst om naar een afdrukbaar formaat om coderingverschillen of onzichtbare tekens te vermijden.
Veelgestelde Vragen & Belangrijke Opmerkingen
- Tekenset: In webomgevingen dien je tekst eerst als UTF-8 te coderen (deze tool doet deze stap automatisch).
- URL-veilig: Gebruik indien mogelijk de URL-veilige variant voor URL-parameters of paden en overweeg het verwijderen van opvulteken.
- Opvulling: Sommige implementaties laten het weglaten van = toe; tijdens decodering wordt automatisch opgevuld tot een veelvoud van 4 tekens.
- Regelafbreken: MIME Base64 kan regelafbrekingen bevatten; selecteer "Negeer witruimte" tijdens decodering om deze te verwerken.
Hoe Base64 te Coderen/Decoderen in Programmeertalen
const encoded = btoa(unescape(encodeURIComponent(text)));
// URL-veilig
const urlSafe = encoded.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
// Voorbewerken: Vervang -_ door +/
let b64 = input.replace(/-/g, '+').replace(/_/g, '/');
if (b64.length % 4 !== 0) b64 = b64.padEnd(b64.length + (4 - (b64.length % 4)), '=');
const text = decodeURIComponent(escape(atob(b64)));
$encoded = base64_encode($text);
// URL-veilig
$urlSafe = rtrim(strtr($encoded, '+/', '-_'), '=');
$b64 = strtr($input, '-_', '+/');
// Automatisch aanvullen met '='
if (strlen($b64) % 4 !== 0) $b64 .= str_repeat('=', 4 - (strlen($b64) % 4));
$text = base64_decode($b64);
import base64
encoded = base64.b64encode(text.encode('utf-8')).decode('ascii')
# URL-veilig Coderen (Padding Verwijderen)
url_safe = encoded.replace('+','-').replace('/','_').rstrip('=')
import base64
def b64_decode(s: str) -> str:
s = s.replace('-','+').replace('_','/')
s += '=' * (-len(s) % 4) # Automatisch aanvullen met '='
return base64.b64decode(s).decode('utf-8')
import (
"encoding/base64"
)
enc := base64.StdEncoding.EncodeToString([]byte(text))
// URL-veilig Coderen (Geen Padding)
urlEnc := base64.RawURLEncoding.EncodeToString([]byte(text))
import (
"encoding/base64"
)
decBytes, err := base64.StdEncoding.DecodeString(enc)
// URL-veilig Decoderen (Geen Padding)
decURL, err2 := base64.RawURLEncoding.DecodeString(urlEnc)
use base64::{engine::general_purpose, Engine as _};
let enc = general_purpose::STANDARD.encode(text.as_bytes());
// URL-veilig Coderen (Geen Padding)
let url_enc = general_purpose::URL_SAFE_NO_PAD.encode(text.as_bytes());
use base64::{engine::general_purpose, Engine as _};
let dec_bytes = general_purpose::STANDARD.decode(&enc).unwrap();
let dec = String::from_utf8(dec_bytes).unwrap();
let url_dec = String::from_utf8(
general_purpose::URL_SAFE_NO_PAD.decode(&url_enc).unwrap()
).unwrap();
import java.nio.charset.StandardCharsets;
import java.util.Base64;
String enc = Base64.getEncoder().encodeToString(text.getBytes(StandardCharsets.UTF_8));
// URL-veilig Coderen (Geen Padding)
String urlEnc = Base64.getUrlEncoder().withoutPadding().encodeToString(text.getBytes(StandardCharsets.UTF_8));
import java.nio.charset.StandardCharsets;
import java.util.Base64;
String dec = new String(Base64.getDecoder().decode(enc), StandardCharsets.UTF_8);
String urlDec = new String(Base64.getUrlDecoder().decode(urlEnc), StandardCharsets.UTF_8);