Formateig Base64
Formata cadenes Base64 en línia amb amplada de caràcters personalitzable (64/76/80/100 caràcters) i sagnat (0/2/4 espais) per mostrar-les en diverses línies. Ideal per llegir cadenes llargues, comparar captures de pantalla i maquetar documents. Només modifica el format de visualització, sense alterar les dades originals de la codificació Base64.
Relacionats
Què és el formateig Base64?
El formateig Base64 consisteix a mostrar, a nivell visual, una cadena llarga de Base64 dividida en diverses línies segons una amplada de caràcters especificada (com ara 64/76/80/100), amb suport per a sagnat de 0/2/4 espais. El resultat formatat és visualment més llegible i més adequat per a captures de pantalla, impressió i maquetació de documents, però **no altera el contingut original dels bytes**; si s'eliminen tots els salts de línia i els sagnats, es recupera el Base64 original d'una sola línia.
**Per què cal formatar?** L'estàndard Base64 de RFC 4648 no obliga a fer salts de línia, però en la pràctica: ① les cadenes Base64 llargues en sistemes de tiquets, eines de xat i documents Markdown solen desbordar-se i provocar desplaçament horitzontal; ② el protocol MIME (RFC 2045) estableix un salt cada 76 caràcters (per a fitxers adjunts de correu); ③ en les revisions de codi, la visualització en diverses línies facilita la localització de caràcters anòmals; ④ la maquetació de captures per a documents requereix una alineació elegant.
**Escenaris d'ús habituals:** ① Maquetació de documentació tècnica: inserir Base64 llarg en Markdown / Confluence / Notion; ② Comparació de captures: facilitar que l'equip vegi la cadena Base64 completa en captures de PR o informes d'errors; ③ Revisió manual: localitzar ràpidament caràcters no vàlids (com ara salts de línia o espais intrusos) durant el Code Review; ④ Fitxers adjunts de correu: aplicar el salt de 76 caràcters de l'estàndard MIME per facilitar la transmissió SMTP; ⑤ Visualització de registres en pantalles grans: mostrar el contingut en diverses línies en panells de monitoratge.
**Diferència amb MIME Base64:** MIME Base64 (RFC 2045) aplica un salt fix cada 76 caràcters, com a requisit obligatori a nivell de protocol. El formateig d'aquesta eina és més flexible, admet amplades de 64/76/80/100 caràcters i sagnats de 0/2/4 espais, adequat per a diversos escenaris de documentació. El salt MIME es pot reproduir seleccionant l'amplada de 76 caràcters.
**Seguretat del formateig:** L'eina només insereix salts de línia i espais de sagnat a nivell visual, **sense modificar mai el contingut dels bytes del Base64 original**. El resultat formatejat, després d'eliminar tots els caràcters en blanc, es reconverteix en la cadena Base64 original idèntica. La majoria de descodificadors Base64 ignoren automàticament els caràcters en blanc, de manera que el resultat formatejat es pot descodificar directament.
Casos d'ús
- Dividir cadenes Base64 molt llargues en línies d'amplada personalitzada per facilitar la lectura i les captures de pantalla
- Formatejar Base64 per a documentació tècnica, registres de tiquets o visualització en correus
- Optimitzar la maquetació de Base64 per a impressió o arxiu
- Ajustar l'estructura Base64 juntament amb eines de divisió i fusió
- Aplicar salts segons l'estàndard MIME (76 caràcters) a Base64 per a fitxers adjunts de correu
- Mostrar Base64 en diverses línies durant revisions de codi per facilitar la localització de caràcters anòmals
- Aplicar sagnat de 4 espais en incrustar Base64 en Markdown per mantenir l'estil de codi
- Visualització de registres en pantalles grans: mostrar payloads Base64 llargs en diverses línies en sistemes de monitoratge
Com usar-ho
- Enganxa la cadena Base64 que vols formatar (pot contenir salts de línia o no)
- Selecciona l'amplada de caràcters per línia: 64 / 76 / 80 / 100
- Selecciona el sagnat: 0 / 2 / 4 espais
- L'eina formata i mostra el resultat en temps real amb l'amplada i el sagnat especificats
- Copia el resultat formatejat per a documents, o fes clic a revertir per eliminar els salts
Característiques
- Amplada de caràcters personalitzable: admet 64 / 76 / 80 / 100 caràcters per línia, adaptació flexible a diferents necessitats de maquetació
- Sagnat configurable: admet sagnat de 0 / 2 / 4 espais, fàcil d'alinear en blocs de codi o Markdown
- Optimització purament visual: només ajusta la forma de visualització, sense alterar les dades originals de la codificació Base64
- Formateig en temps real: amb antirrebot de 200 ms, es formata mentre s'escriu, sense retards
- Reversió amb un sol clic: elimina tots els salts de línia i sagnats per restaurar el Base64 d'una sola línia
- Comptador de caràcters i línies: mostra en temps real el nombre de caràcters d'entrada i el total de línies de sortida
- Còpia amb un sol clic: el resultat formatejat es pot copiar directament al porta-retalls per a documents o registres de tiquets
- Processament local al navegador, sense càrregues: tot el formateig es fa dins del navegador, sense passar per cap servidor
Exemples de codi
JavaScript: implementació manual del formateig Base64 (per entendre'n el principi)
javascriptComprendre la lògica subjacent del formateig Base64: trossejar per amplada de caràcters i inserir salts de línia.
// Funció de formateig Base64 (coincideix amb la lògica d'aquesta eina)
function formatBase64(input, lineLength = 76, indent = 0) {
// 1. Eliminar tots els caràcters en blanc
const clean = input.replace(/\s/g, '');
if (!clean) return '';
// 2. Trossejar segons l'amplada especificada
const lines = [];
for (let i = 0; i < clean.length; i += lineLength) {
const line = clean.slice(i, i + lineLength);
lines.push(' '.repeat(indent) + line);
}
// 3. Unir amb salts de línia
return lines.join('\n');
}
// Exemple d'ús
const b64 = 'a'.repeat(200);
console.log(formatBase64(b64, 76, 0));
// Sortida: Base64 amb 76 caràcters per línia
// Desformateig (per a descodificació o transmissió)
function unformatBase64(input) {
return input.replace(/\s/g, '');
}
console.log(unformatBase64(formatBase64(b64, 76, 0)).length); // 200Python: formateig Base64 + salts MIME
pythonImplementació en Python de salts cada 76 caràcters (estàndard MIME) amb sagnat especificable.
import textwrap
def format_base64(b64_str: str, width: int = 76, indent: int = 0) -> str:
"""Formata una cadena Base64 en diverses línies"""
# Eliminar tots els espais en blanc
clean = ''.join(b64_str.split())
if not clean:
return ''
# Utilitzar textwrap per trossejar per amplada
lines = textwrap.wrap(clean, width=width)
# Afegir sagnat
if indent > 0:
lines = [' ' * indent + line for line in lines]
return '\n'.join(lines)
# Exemple d'ús
b64 = 'aGVsbG8gd29ybGQ=' * 10
print(format_base64(b64, 76, 0))
# Reproduir MIME Base64 (RFC 2045)
mime_format = format_base64(b64, 76)
print(f'Nombre de línies MIME Base64: {len(mime_format.splitlines())}')
# Revertir a una sola línia
single_line = b64.replace('\n', '').replace(' ', '')
print(f'Longitud de la línia única: {len(single_line)}')Línia d'ordres: eina fold + salts MIME Base64
bashL'eina fold integrada en sistemes Linux/macOS permet implementar ràpidament el formateig Base64 des de la línia d'ordres.
# 1. Introduir Base64 → aplicar salts de 76 caràcters (estàndard MIME)
echo "aGVsbG8gd29ybGQ=" | base64 | base64 | fold -w 76
# 2. Formatejar un fitxer Base64 llarg → sortida a un fitxer nou
fold -w 76 encoded.txt > formatted.txt
# 3. Aplicar salts de 64 caràcters (visualització compacta)
fold -w 64 encoded.txt > compact.txt
# 4. Alhora eliminar tots els salts (desformateig)
tr -d '\n' < formatted.txt > single-line.txt
# 5. Verificació: longitud Base64 + nombre de línies
wc -c encoded.txt | awk '{print "Caràcters:", $1}'
wc -l formatted.txt | awk '{print "Línies:", $1}'
# 6. Combinar amb openssl per a una codificació base64 completa + formateig
echo "Hola món" | openssl base64 -A | fold -w 76 > hello.b64.txt
cat hello.b64.txtPreguntes freqients
El formateig canvia el contingut real del Base64?
No. El formateig només insereix salts de línia i espais de sagnat a nivell visual, sense alterar la codificació en si. Si elimines tots els caràcters en blanc del contingut formatejat, recuperes el Base64 original d'una sola línia. Tots els descodificadors Base64 (l'atob natiu del navegador, Node.js Buffer, Python base64) ignoren automàticament els caràcters en blanc, de manera que el resultat formatejat es pot utilitzar directament per descodificar.
Quina diferència hi ha entre el formateig Base64 i MIME Base64?
MIME Base64 segueix estrictament l'amplada de 76 caràcters de RFC 2045 per als salts, i és l'estàndard per a la transmissió de fitxers adjunts de correu. El formateig d'aquesta eina és més flexible: permet amplades personalitzades de 64/76/80/100 caràcters i sagnats de 0/2/4 espais, més adequat per a diferents necessitats de visualització com documents i captures. Seleccionant l'amplada de 76 caràcters es reprodueix el salt MIME.
És adequat per a visualització de registres i tiquets?
Molt adequat. Les cadenes Base64 llargues en sistemes de tiquets (Jira / Zendesk), eines de xat (Slack / Teams) o documents Markdown tendeixen a desbordar-se i provocar desplaçament horitzontal. Després del formateig, la visualització en diverses línies és clara i llegible, i es pot enganxar directament en adjunts de tiquets o finestres de xat.
Després de formatar, es pot utilitzar directament per descodificar?
Sí. Tots els descodificadors Base64 principals ignoren automàticament els salts de línia i els espais. Si trobes problemes (com ara amb versions antigues d'OpenSSL), pots fer clic primer al botó «Revertir» per eliminar els salts abans de descodificar.
Per què hi ha diverses amplades: 64 / 76 / 80 / 100 caràcters?
64 caràcters és adequat per a documents compactes (com ara terminals CLI i taules Markdown); 76 caràcters és l'estàndard MIME per a correus; 80 caràcters és l'amplada de terminal tradicional; 100 caràcters és adequat per a editors de pantalla ampla i documents moderns. Cada amplada té el seu millor escenari d'ús.
Per a què serveix el sagnat?
El sagnat (0/2/4 espais) fa que el Base64 es mantingui alineat en blocs de codi o Markdown: 0 espais és adequat per a text pur, 2 espais per a l'estil de codi JS/Python, i 4 espais per a blocs de codi imbricats en Markdown.
El formateig augmenta el nombre de caràcters del Base64?
Augmenta aproximadament un 1-3% (per salts de línia + espais de sagnat), però no afecta el resultat de la descodificació. Si la mida és sensible per a la transmissió (com ara en paràmetres URL), es recomana utilitzar primer la funció «Revertir» per recuperar la línia única.
Admet UTF-8 i caràcters no ASCII?
Aquesta eina no gestiona directament els jocs de caràcters: només formata la cadena Base64 en si mateixa. Si el Base64 conté caràcters no ASCII (com ara xinès codificat en UTF-8 i després en Base64), el formateig no afecta la correcció de la codificació.
És adequat per formatejar fitxers grans?
Sí. L'eina formata en temps real i el navegador pot gestionar cadenes Base64 de fins a 1 MB sense problemes. Per sobre de 10 MB pot provocar bloquejos de la interfície; es recomana formatar per blocs.
Després de formatar el volum augmenta, es pot comprimir?
El formateig només afegeix salts de línia i sagnats, que són amigables amb els algorismes de compressió. Es pot comprimir amb gzip / Brotli, o utilitzar l'eina Base64 Stats per veure l'increment específic.
Solució de problemes
Després de formatar, alguns caràcters Base64 es perden
És possible que el Base64 d'origen contingui caràcters no vàlids (com ara salts de línia no processats correctament). Primer neteja el Base64 amb l'eina Base64 Clean i després torna'l a formatar.
El resultat formatejat no coincideix amb els bytes originals
Això és impossible: el formateig només insereix caràcters en blanc, no modifica el contingut dels bytes. Si detectes una inconsistència, vol dir que el Base64 d'origen ja ha estat processat incorrectament (com ara un formateig repetit que ha inserit espais en blanc duplicats).
Després de formatar una cadena llarga, la interfície es bloqueja
Les cadenes Base64 de més de 10 MB poden provocar bloquejos del navegador. Recomanacions: ① processar per blocs; ② utilitzar primer base64-clean per eliminar espais en blanc sobrants; ③ reduir l'amplada (per exemple a 64 caràcters) per disminuir la càrrega de renderitzat per línia.
Glossari
- Formateig Base64
- Divisió, a nivell visual, d'una cadena Base64 en diverses línies segons una amplada especificada; només afecta la presentació visual, sense alterar la codificació en si.
- MIME Base64
- Variant de Base64 establerta per RFC 2045 amb salts cada 76 caràcters, utilitzada principalment per a la transmissió de fitxers adjunts en correus electrònics.
- Amplada de caràcters (line length)
- Nombre de caràcters Base64 que es mostren per línia. Valors habituals: 64 (compacte), 76 (estàndard MIME), 80 (impressió estàndard), 100 (pantalla ampla).
- Sagnat (indent)
- Nombre d'espais al començament de cada línia. Valors habituals: 0 (sense sagnat), 2 (estil de codi), 4 (bloc de codi Markdown).
- Caràcters en blanc (whitespace)
- Espais, tabuladors, salts de línia i altres caràcters que poden aparèixer en una cadena Base64. El formateig primer elimina aquests caràcters i després en torna a inserir segons l'amplada especificada.
- Desformateig (unformat)
- Procés de revertir un Base64 formatejat (diverses línies + sagnat) a una sola línia sense espais en blanc, per a la descodificació o transmissió.
Taula comparativa de les 4 amplades de caràcters
Les diferents amplades de caràcters s'adapten a diferents escenaris de visualització; tria segons l'entorn de destinació.
| Amplada | Escenari típic | Estàndard corresponent | Exemple |
|---|---|---|---|
64 caràcters | Terminal CLI, taules Markdown | Visualització compacta | Pantalla petita / alta densitat |
76 caràcters | Transmissió de fitxers adjunts | RFC 2045 MIME | Correu / SMTP |
80 caràcters | Impressió en terminal tradicional | Terminal Unix tradicional | Impressió de documents |
100 caràcters | Editors moderns / pantalla ampla | Especificació UI moderna | IDE / documents |
Taula comparativa dels 3 estils de sagnat
Els diferents estils de sagnat s'ajusten a diferents convencions de codi; tria segons els hàbits de l'equip o projecte.
| Sagnat | Estil de codi | Exemple (primera línia Base64) |
|---|---|---|
0 espais | Sense sagnat (text pur) | QUJD... |
2 espais | Convenció JS / Python | QUJD... |
4 espais | Imbricació Markdown / convenció Java | QUJD... |
Authoritative References
- Comparació Segura de Text
- Conversió Binària
- Xifrat de César
- Codi Morse
- Codificació Hexadecimal
- Base64 a Vídeo
- Imatge a Base64
- Base64 a imatge
- Text a Base64
- Base64 a Text
- Verificador de hash de fitxer
- Fitxer a Base64
- Base64 a Fitxer
- Àudio a Base64
- Base64 a Àudio
- Xifrar i desxifrar AES
- Xifratge i Desxifrat DES
- Codificador i Descodificador Base32
- Base58 Codificació i descodificació
- Codificació Base64
- Descodificació Base64
- Comparació Base64
- Divisor Base64
- Base64 fusió de múltiples línies
- Formateig Base64
- Validació Base64
- Codificació Base64 per lots
- Descodificació per Lots Base64
- Neteja Base64
- Gestió del padding Base64
- Estadístiques Base64
- Base64 a Hex
- Convertidor Base64 DataURL
- Convertidor Base64-Hex
- Codificació Base85
- Generació i Verificació HMAC
- Derivació PBKDF2
- Hash MD5
- Hash SHA-256
- Hash SHA1
- Hash SHA512
- Decodificador, Verificador i Generador JWT
- Codificació d'Entitats HTML
- Unicode Escape
- Codificació URL
- Base64 URL-Safe
- MIME Base64
- Ofuscació de Java
- Ofuscació JS
- Ofuscació de PHP
- Ofuscació de Python
- Convertidor de Vídeo a Base64