MiServe DevTools

I tuoi adesivi

Fissa qui gli strumenti. Restano salvati in questo browser.

Convertitore da testo a esadecimale, binario e byte

Guarda gli stessi byte come testo UTF-8, esadecimale, binario, decimale, ottale e Base64, e modifica una qualsiasi vista per aggiornare le altre.

Separatore tra i byte
Raggruppamento binario

Funziona nel tuo browser. Nulla di ciò che incolli viene caricato.

Informazioni su questo strumento

Una sequenza di byte, sei modi di scriverla

Un computer memorizza il testo come byte, e un byte è un numero da 0 a 255. L'esadecimale scrive ogni byte con due cifre (48), il binario con otto bit (01001000), l'ottale con tre cifre (110) e il decimale come un numero normale (72). Sono tutti lo stesso byte, che corrisponde alla lettera H in ASCII e in UTF-8. Base64 racchiude ogni tre byte in quattro caratteri stampabili.

Le viste di questa pagina mostrano sempre gli stessi byte. Scrivi in una qualsiasi e le altre vengono ricalcolate. Se ciò che scrivi non si può interpretare, quel campo viene segnalato e gli altri mantengono l'ultimo contenuto valido.

I caratteri non sono byte

La vista del testo è codificata in UTF-8, dove ogni code point occupa da uno a quattro byte. Le lettere ASCII ne occupano uno, é due (c3 a9), la maggior parte dei caratteri CJK tre e la maggior parte delle emoji quattro o più. Per questo il numero di byte e il numero di caratteri non coincidono.

Il numero di caratteri è il numero di grapheme cluster, le unità che chi legge percepisce come un singolo carattere, quando il browser mette a disposizione Intl.Segmenter. L'emoji di una famiglia è un solo grapheme cluster composto da più code point uniti da zero-width joiner, per questo viene mostrato anche il numero di code point.

Non tutte le sequenze di byte sono UTF-8 valido. Quando inserisci byte che non lo sono, la vista del testo mostra il carattere di sostituzione U+FFFD al posto dei byte non validi e lo strumento ti avvisa.

Formati di input accettati

I byte possono essere separati da spazi, a capo, virgole o underscore, e l'esadecimale anche da due punti o trattini, come in un indirizzo MAC. Sono accettati i prefissi 0x, \x, 0b e 0o, quindi puoi incollare i valori di un array literal preso dal codice sorgente, senza le parentesi. Le cifre scritte senza separatori vengono lette a larghezza fissa: due cifre esadecimali, otto bit o tre cifre ottali per byte.

Una virgola o un prefisso iniziano sempre un nuovo valore, quindi 0b1000, 0b0001 sono i due byte 8 e 1. Il binario scritto a gruppi di quattro separati solo da spazi, come 1000 0001, viene letto otto bit alla volta e dà un solo byte.

Lo stile di output Prefisso 0x scrive un elenco separato da virgole come 0x48, 0x65, pronto da incollare di nuovo nel codice. Le viste binaria e ottale usano allo stesso modo 0b e 0o, mentre la vista decimale scrive numeri semplici. I byte decimali non hanno una larghezza fissa, quindi restano separati da uno spazio anche quando il separatore è impostato su Nessuno.

Domande

Come si converte un testo in esadecimale?

Ogni carattere viene prima codificato in byte, qui con UTF-8, e ogni byte viene scritto con due cifre esadecimali. La parola Hi diventa 48 69. Scrivi il testo nel primo campo e leggi la vista esadecimale.

Perché un solo carattere produce più byte?

UTF-8 usa un solo byte soltanto per l'ASCII. Le lettere accentate come é richiedono due byte, la maggior parte dei caratteri cinesi, giapponesi e coreani tre, e la maggior parte delle emoji quattro o più.

Che cosa significa il carattere � nel testo?

È U+FFFD, il carattere di sostituzione. Compare dove i byte non sono UTF-8 valido, per esempio quando i dati sono binari o sono stati scritti in un'altra codifica come Latin-1 o UTF-16.

Il mio testo viene inviato a un server?

No. La conversione la fa JavaScript nella scheda del tuo browser. Ciò che scrivi non viene inviato da nessuna parte e non viene salvato.

Altri strumenti in Codifica