Koder plików Base64

Plik do Base64
Dalej: opcje

Base64 zamienia dowolny plik binarny w ciąg drukowalnego ASCII, który może przejść przez systemy zaprojektowane tylko dla tekstu: JSON, YAML, treść e-maila, SMS, kopiuj-wklej do czatu. Ten koder przyjmuje dowolny plik, PDF, obraz, ZIP, nawet plik wykonywalny, i zwraca reprezentację Base64 gotową do wstawienia w URI data:, ładunek API albo plik konfiguracyjny.

Jak zakodować plik

  1. 1

    Upuść dowolny plik do kodera

    Działają wszystkie formaty binarne. Przeglądarka czyta surowe bajty.

  2. 2

    Bajty są kodowane Base64

    Każde trzy bajty stają się czterema znakami ASCII z alfabetu `A-Z a-z 0-9 + /`.

  3. 3

    Wybierz wrapper wyjścia

    Zwykły Base64, URI `data:` z typem MIME podanym przez przeglądarkę (lub ogólną wartością zastępczą) albo wersja bezpieczna dla stringa JSON.

  4. 4

    Skopiuj albo pobierz jako tekst

    Dla dużych plików pobierz jako `.txt`; dla małych skopiuj do schowka.

Narzut rozmiaru

Base64 powiększa każde trzy bajty do czterech znaków, wzrost o 33% w koszcie pamięci i sieci. Padding = dodaje jeszcze kilka bajtów. Zgrubne oszacowanie:

Rozmiar pliku wejściowego Rozmiar tekstu Base64
1 KB 1.33 KB
100 KB 133 KB
1 MB 1.33 MB
10 MB 13.3 MB

Osadzanie dużych plików binarnych jako Base64 w HTML albo JSON to szybki sposób na rozdęcie ładowania strony i pamięci parsera. Inline wszystkiego powyżej około 10 KB używaj tylko wtedy, gdy wymusza to ograniczenie deploymentu.

Typowe zastosowania

  • Data URI, małe obrazy osadzane bezpośrednio (inline) w CSS albo HTML: url("data:image/png;base64,iVBORw0KGgo...").
  • Załączniki e-mail, wieloczęściowe treści MIME kodują załączniki w Base64 dla transportu bezpiecznego dla SMTP.
  • Payloady JSON, osadzenie PDF albo ZIP w polu JSON dla API jednego żądania.
  • Pliki YAML/config, wysyłanie klucza TLS albo małego blobu binarnego w konfiguracji.

Warianty i padding

Standardowy alfabet Base64 według RFC 4648 ma 64 znaki: A-Z, a-z, 0-9, + i /. Znak = jest dopełnieniem, a nie częścią alfabetu. Aby uzyskać wynik URL-safe (zamienia + na - i / na _), użyj dedykowanego przełącznika. Dopełnienie jest domyślnie włączone i można je wyłączyć.

Uwaga o prywatności

Plik nigdy nie opuszcza twojego urządzenia. FileReader API czyta bajty w przeglądarce, a JavaScript wykonuje kodowanie. To ważne przy kodowaniu wrażliwych PDF-ów, kluczy prywatnych albo nieopublikowanych assetów.

Najczęściej zadawane pytania

Koder przyjmuje jeden plik o rozmiarze do 50 MB. Wynik Base64 jest większy od pliku źródłowego i pozostaje w pamięci przeglądarki, dlatego sztywny limit chroni przed nadmiernym zużyciem pamięci.

Użyj go, gdy potrzebny jest alfabet bezpieczny dla adresów URL lub nazw plików. Base64 URL-safe (RFC 4648 sekcja 5) zastępuje + znakiem -, a / znakiem _; osobna opcja paddingu określa, czy końcowe znaki = mają pozostać.

Tylko dla wyjścia URI data:. data:image/png;base64,... mówi przeglądarce, jak renderować zdekodowane bajty. Dla zwykłego Base64 albo osadzania w JSON typ MIME nie jest częścią zakodowanych danych.

Kod HTML może zawierać URL data:application/pdf;base64,..., ale nowoczesne przeglądarki często blokują przechodzenie na najwyższym poziomie do adresów data:, a pobieranie nie działa niezawodnie we wszystkich przeglądarkach. Duże wartości mogą też przekroczyć limity URL, pamięci lub Content Security Policy. Aby zapewnić niezawodne pobieranie, utwórz w przeglądarce adres URL obiektu Blob albo użyj łącza HTTPS do hostowanego pliku.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach