Codificatore e decodificatore quoted-printable
Trasforma Hello café in Hello caf=C3=A9 e viceversa: accenti e simboli diventano coppie esadecimali precedute dal segno uguale, le lettere semplici restano leggibili e le interruzioni morbide tengono corte le righe lunghe. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Testo
- Hello café
- Modalità di calcolo
- Encode
- Risultato
- Hello caf=C3=A9
- Codifica
- quoted-printable
- Byte input
- 11
- Byte output
- 15
Questo codificatore quoted-printable converte testo UTF-8 semplice in MIME Quoted-Printable e decodifica stringhe QP di nuovo in testo leggibile usando le regole della sezione 6.7 dell'RFC 2045. Il quoted-printable mantiene leggibili la maggior parte dei caratteri ASCII codificando gli ottetti non sicuri come escape esadecimali con segno uguale, ed è per questo che i corpi email, i gateway di posta legacy e molti percorsi di strumenti MIME si affidano ancora ad esso per il testo internazionale senza forzare la completa opacità del Base64. Il motore è completamente deterministico: lo stesso input e la stessa modalità producono sempre lo stesso risultato, senza chiamate di rete, sale casuale o scorciatoie legate alla data. Controlli comuni includono la codifica di Hello café in Hello caf=C3=A9 e la decodifica di quella stringa di nuovo nella frase originale.
Cos'è il quoted-printable e cosa restituisce questo strumento
Il quoted-printable è una codifica di trasferimento del contenuto definita per il MIME così i dati per lo più testuali possono viaggiare attraverso percorsi di posta a 7 bit o ristretti senza diventare Base64 opaco. I caratteri ASCII stampabili sicuri compaiono di solito come loro stessi, il segno uguale è riservato come introduttore di escape, e qualsiasi altro ottetto viene scritto come un segno uguale seguito da due cifre esadecimali.
Le interruzioni di riga soft — un segno uguale alla fine di una riga prima di un CRLF — permettono ai codificatori di mantenere ogni riga codificata entro il classico limite di settantasei caratteri senza inserire ritorni a capo forzati nel testo decodificato.
Questa pagina segue sempre quel contratto per il testo UTF-8: la modalità encode codifica la vostra stringa in UTF-8, mappa ogni byte in un letterale o in un token esadecimale con segno uguale, e inserisce interruzioni soft così le righe restano entro il limite; la modalità decode rimuove le interruzioni soft, espande le coppie esadecimali con segno uguale in byte, e rifiuta sequenze di escape incomplete o non esadecimali invece di indovinare.
Dove si incontra il quoted-printable nelle email
Gli sviluppatori incontrano il quoted-printable quando ispezionano corpi email contrassegnati Content-Transfer-Encoding: quoted-printable, creano messaggi di testo semplice internazionali per gateway SMTP, o fanno il debug del perché un accento di café si è trasformato in coppie esadecimali con segno uguale in un dump grezzo di messaggio. I team frontend e di supporto decodificano frammenti QP durante le indagini sui ticket senza incollare i dati in script ad hoc che gestiscono male le interruzioni di riga soft.
I servizi backend codificano campioni di configurazione o brevi stringhe multilingue prima di inserirli in parti MIME dove il trasporto pulito a 8 bit non è garantito. Gli ingegneri di qualità generano coppie deterministiche di codifica e decodifica per test contrattuali così una libreria di posta che dichiara supporto QP non può cambiare in silenzio le regole di maiuscole esadecimali o omettere le interruzioni soft.
Abbinatelo agli helper Base64 quando vi servono codifiche di trasferimento correlate, e agli altri strumenti di testo quando state costruendo un piccolo laboratorio di codificatori gratuiti e deterministici.
Casi d'uso
Debug del corpo delle email
Codificate o decodificate frammenti MIME quoted-printable da messaggi grezzi così accenti e interruzioni di riga soft corrispondano a ciò che i client di posta visualizzano.
Preparazione per gateway legacy
Trasformate testo semplice UTF-8 in quoted-printable sicuro per il trasporto prima di inviarlo attraverso percorsi a 7 bit ristretti.
Domande frequenti
In cosa il quoted-printable è diverso dal Base64?
Il quoted-printable mantiene leggibile la maggior parte dell'ASCII e usa l'escape =XX solo per ottetti non sicuri. Il Base64 codifica ogni byte in un alfabeto opaco ed è migliore per il binario puro.
Cosa succede se una sequenza di escape è malformata?
=XX incompleto, cifre non esadecimali dopo =, o un = solitario finale vengono tutti rifiutati invece di essere indovinati.
Il risultato è deterministico?
Sì. Lo stesso testo e la stessa modalità producono sempre lo stesso risultato senza rete, casualità o comportamenti legati alla data.
Perché la é diventa =C3=A9 nel quoted-printable?
Perché in UTF-8 la é occupa due byte, C3 e A9. Il quoted-printable scrive ogni byte fuori dall'ASCII semplice come un segno uguale seguito da due cifre esadecimali, quindi una lettera accentata occupa sei caratteri.
Che cos'è un'interruzione di riga morbida nel quoted-printable?
È un segno uguale alla fine di una riga codificata: divide una riga lunga senza aggiungere un vero a capo. In decodifica lo strumento toglie quel segno e ricongiunge le parti come prima.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/enc/quoted-printable \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello café"}'const res = await fetch("https://api.kit.forhosting.com/enc/quoted-printable", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello café"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/quoted-printable",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello café"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/quoted-printable", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello café"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello café"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/quoted-printable", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"text": "Hello café"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.quoted_printable",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Usatelo gratis nel browser per il debug della posta e la pratica MIME, oppure chiamate l'API a $0.002 per richiesta riuscita quando le pipeline hanno bisogno di trasformazioni quoted-printable riproducibili in CI e servizi backend.
Cos'è il quoted-printable e cosa restituisce questo strumento
La risposta JSON include result per la stringa trasformata, mode che riporta encode o decode, encoding fissato a quoted-printable, e input_bytes più output_bytes così potete verificare le dimensioni nei test. Non c'è percorso di streaming e nessuna riparazione silenziosa di QP rotto: o la stringa è testo quoted-printable valido oppure la richiesta fallisce con invalid_input. Se vi serve un impacchettamento binario opaco, preferite gli endpoint Base64 o Base64url; questa landing è per la codifica QP leggibile e orientata all'email che client di posta e librerie MIME già si aspettano.
Come vengono letti testo e modalità e come i risultati restano riproducibili
Encode accetta qualsiasi stringa Unicode, la converte con il TextEncoder della piattaforma in byte UTF-8, quindi emette quoted-printable con escape esadecimali maiuscoli e a capo CRLF soft. Dopo il recupero dei byte, una decodifica UTF-8 fatale assicura che i dati binari spuri non diventino testo illeggibile. Il campo preferito del payload è text, con gli alias input, value e s così form, query string e client SDK possono riusare lo stesso contratto senza rinominare colonne. Mode è predefinito su encode e accetta esplicitamente decode; gli alias op, direction e action mappano allo stesso interruttore per script che già usano quei nomi. Decode richiede una stringa QP ben formata: un segno uguale solitario alla fine dell'input, un segno uguale seguito da un solo carattere, o un segno uguale seguito da cifre non esadecimali falliscono tutti con un messaggio chiaro invalid_input che nomina l'escape malformato. Abbinate l'esecuzione gratuita nel browser di questa pagina all'API a pagamento quando vi serve lo stesso risultato matematico dentro una pipeline automatizzata senza reimplementare da soli le tabelle quoted-printable. Gli input non validi restituiscono invalid_input e non vengono addebitati, il che mantiene economica la validazione mentre le trasformazioni riuscite restano a un prezzo fisso per elemento.
Dove si inserisce il quoted-printable in email, MIME e fixture di test
Gli educatori usano lo stesso strumento quando insegnano la differenza tra l'opacità del Base64 e la leggibilità del quoted-printable per payload per lo più testuali. In questa pagina il lavoro viene svolto interamente nel browser; tramite l'API ogni ricerca riuscita costa $0.002, la convalida fallita non viene addebitata e nulla viene conservato dopo la restituzione della risposta. Questa divisione — esplorazione interattiva gratuita e API a pagamento identica — corrisponde al resto del catalogo tier A del KIT e permette di passare da una dimostrazione in aula a una pipeline automatizzata senza cambiare il risultato codificato.
Casi di integrazione
Generazione di fixture MIME
Producete stringhe QP riproducibili per unit test, file golden e controlli di integrazione SMTP o IMAP.
Domande tecniche
Quanto costa il codificatore quoted-printable?
È gratuito nel browser su questa pagina. Tramite l'API una richiesta riuscita costa $0.002; gli input non validi non vengono addebitati.
Quali modalità sono supportate?
mode=encode (predefinito) trasforma testo semplice in quoted-printable. mode=decode trasforma una stringa QP di nuovo in testo UTF-8.