Kódovač/dekódovač Base64

Zdarma online Base64 enkóder/dekóder pro rychlé enkódování a dekódování, s podporou UTF-8, převodem bezpečným pro URL, automatickým odsazením, statistikami v reálném čase a funkcí bezpečného kopírování. Nabízí vícejazyčné příklady kódu, generování Data URI, podrobné návody a často kladené otázky. Uživatelsky přívětivé rozhraní s obousměrným vyplňováním vstupů, přístupností pomocí klávesnice a designem optimalizovaným pro mobily. Nevyžaduje stahování, funguje přímo ve vašem prohlížeči.

Enkódovat (Text → Base64)

Dekódovat (Base64 → Text)

Jak používat

Base64 kóduje binární data do formátu ASCII pro bezpečné přenosy a uložení. Velikost se zvětší přibližně o 33 %.
Kódovat: Převést prostý text do Base64 pro bezpečný přenos.
Dekódovat: Obnovit původní text z Base64 řetězce.

Funkce

  • Bezpečné pro UTF-8: Správně zpracovává znaky mimo ASCII (zabaleno do encodeURIComponent/unescape).
  • Podpora pro URL: Přepínání mezi + / → - _ jedním kliknutím, volitelné odstranění výplně =.
  • Předzpracování před dekódováním: Ignorovat mezery, automatická konverze na URL-safe a automatické doplnění výplně =.
  • Interakce v reálném čase: Vstup je zpracováván okamžitě, zobrazená statistika délky a míry zvětšení.
  • Uživatelská přívětivost: Rychlé kopírování, obousměrné vyplnění vstupů, přístupnost přes klávesnici, přátelské pro mobilní zařízení.
  • Jednotné téma: Bez tříd dark: z Tailwind – plně stylováno pomocí témat DaisyUI.

Rychlé příklady

Původní text:
Hello, World!
Base64:
SGVsbG8sIFdvcmxkIQ==

Co je Base64?

Base64 je metoda kódování binárních dat do textu ASCII, běžně používaná pro přenos obrázků nebo obsahu souborů přes textové protokoly, jako jsou JSON, XML a HTTP.

Mapuje každé 3 bajty na 4 tisknutelné znaky, což typicky vede k přibližnému 33% zvětšení velikosti.

Standardní Base64 používá A–Z, a–z, 0–9, +, / a výplňový znak =; varianta bezpečná pro URL nahrazuje + a / za - a _, aby se předešlo problémům s escapováním v URL.

Běžné případy použití

  • Vložit obrázky nebo malé soubory jako Data URI.
  • Přenášet binární data mezi klientem a serverem (např. šifrované šifrové texty, komprimované proudy).
  • Převést text do tisknutelného formátu, aby se předešlo nekonzistencím kódování nebo neviditelným znakům.

Často kladené otázky a důležité poznámky

  • Znaková sada: V webových prostředích nejprve zakódujte text jako UTF-8 (tento nástroj tento krok provede automaticky).
  • Bezpečné pro URL: Pro parametry nebo cesty URL upřednostněte variantu bezpečnou pro URL a zvažte odstranění výplňových znaků.
  • Výplň: Některé implementace umožňují vynechání =; během dekódování se automaticky doplní na násobek 4 znaků.
  • Zalomení řádků: MIME Base64 může obsahovat zalomení řádků; během dekódování vyberte „Ignorovat mezery“ pro jejich zpracování.

Jak enkódovat/dekódovat Base64 v programovacích jazycích

JavaScript
Text → Base64 (bezpečné pro UTF-8)
const encoded = btoa(unescape(encodeURIComponent(text)));
// Bezpečné pro URL
const urlSafe = encoded.replace(/\+/g, '-').replace(/\//g, '_').replace(/=+$/g, '');
Dekódovat (Base64 → Text)
// Předzpracování: Nahrazení -_ za +/
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)));
PHP
Kódovat (Text → Base64)
$encoded = base64_encode($text);
// Bezpečné pro URL
$urlSafe = rtrim(strtr($encoded, '+/', '-_'), '=');
Dekódovat (Base64 → Text)
$b64 = strtr($input, '-_', '+/');
// Automatické odsazení pomocí '='
if (strlen($b64) % 4 !== 0) $b64 .= str_repeat('=', 4 - (strlen($b64) % 4));
$text = base64_decode($b64);
Python
Kódovat (Text → Base64)
import base64

encoded = base64.b64encode(text.encode('utf-8')).decode('ascii')
# Kódování bezpečné pro URL (odebrání odsazení)
url_safe = encoded.replace('+','-').replace('/','_').rstrip('=')
Dekódovat (Base64 → Text)
import base64

def b64_decode(s: str) -> str:
    s = s.replace('-','+').replace('_','/')
    s += '=' * (-len(s) % 4)  # Automatické odsazení pomocí '='
    return base64.b64decode(s).decode('utf-8')
Go
Kódovat (Text → Base64)
import (
    "encoding/base64"
)

enc := base64.StdEncoding.EncodeToString([]byte(text))
// Kódování bezpečné pro URL (bez odsazení)
urlEnc := base64.RawURLEncoding.EncodeToString([]byte(text))
Dekódovat (Base64 → Text)
import (
    "encoding/base64"
)

decBytes, err := base64.StdEncoding.DecodeString(enc)
// Dekódování bezpečné pro URL (bez odsazení)
decURL, err2 := base64.RawURLEncoding.DecodeString(urlEnc)
Rust
Kódovat (Text → Base64)
use base64::{engine::general_purpose, Engine as _};

let enc = general_purpose::STANDARD.encode(text.as_bytes());
// Kódování bezpečné pro URL (bez odsazení)
let url_enc = general_purpose::URL_SAFE_NO_PAD.encode(text.as_bytes());
Dekódovat (Base64 → Text)
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();
Závislost na Cargo: base64 = "0.22"
Java
Kódovat (Text → Base64)
import java.nio.charset.StandardCharsets;
import java.util.Base64;

String enc = Base64.getEncoder().encodeToString(text.getBytes(StandardCharsets.UTF_8));
// Kódování bezpečné pro URL (bez odsazení)
String urlEnc = Base64.getUrlEncoder().withoutPadding().encodeToString(text.getBytes(StandardCharsets.UTF_8));
Dekódovat (Base64 → Text)
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);

Příklady Data URI

Vložit obrázky nebo malé soubory jako Data URI:

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...

Poznámka: Nepoužívejte Data URI pro velké soubory, protože výrazně zvětšují velikost HTML/JSON a snižují výkon.