Decodificatore Unicode

Converti tra escape Unicode e testo. Supporta \uXXXX, \UXXXXXXXX, entità &#XXXX; e ricerca punti di codice. Tutta l'elaborazione avviene nel tuo browser.

Codifica e decodifica Informazioni carattere Elaborazione lato client
Il risultato apparirà qui...

Come utilizzare il decodificatore Unicode

1

Scegli la modalità

Seleziona Decodifica (escape in testo) o Codifica (testo in escape).

2

Inserisci l'input

Incolla gli escape Unicode o il testo normale a seconda della modalità.

3

Converti

Clicca Converti e esamina il risultato e i dettagli dei caratteri.

Cos'è la codifica Unicode?

La codifica Unicode permette di rappresentare caratteri di qualsiasi lingua o sistema di simboli in diversi formati. I formati di codifica comuni includono \uXXXX (JavaScript/JSON), &#NNNNN; (entità HTML) e U+XXXX (punti di codice Unicode). Queste codifiche garantiscono che il testo possa essere trasmesso e visualizzato in modo sicuro su sistemi diversi.

Formati di codifica

Codifica JavaScript

Utilizzato nelle stringhe JSON e JavaScript

Entità HTML (&#XXXX;)

Utilizzato in HTML per rappresentare caratteri speciali

Escape CSS (\XXXXXX)

Utilizzato nel contenuto e negli identificatori CSS

Correggi testo corrotto (mojibake)

Il testo corrotto (mojibake) compare quando i byte di una codifica vengono interpretati con un'altra. Caso più comune: byte UTF-8 letti come Windows-1252 o Latin-1, e «café» diventa «café». Passa alla modalità Correggi, incolla il testo danneggiato: il decoder tratterà ogni carattere come byte grezzo e lo ricodificherà come UTF-8.

Esempi comuni di testo corrotto

Corrotto Riparato Causa
café café UTF-8 → Latin-1
å¼ ä¸‰ 张三 UTF-8 → Latin-1
“hi†“hi” UTF-8 → double-encoded
ü ö ñ ü ö ñ UTF-8 → Windows-1252
�� � � byte già persi (U+FFFD)

Per evitare il mojibake nelle tue app, dichiara sempre la codifica: HTML con <meta charset="UTF-8">, header Content-Type: text/html; charset=utf-8 e UTF-8 in database e connessioni.

Confronto UTF-8, UTF-16 e UTF-32

UTF-8 UTF-16 UTF-32
Unità di codifica 8 bit 16 bit 32 bit
A (U+0041) 41 00 41 00 00 00 41
é (U+00E9) C3 A9 00 E9 00 00 00 E9
中 (U+4E2D) E4 B8 AD 4E 2D 00 00 4E 2D
🎉 (U+1F389) F0 9F 8E 89 D8 3C DF 89 00 01 F3 89
Ideale per Web, JSON, API: compatibile ASCII e compatto Testo in memoria di Java, JavaScript, C# Accesso diretto ai code point, raro

Code point Unicode comuni

Riferimento rapido dei caratteri più cercati: punteggiatura, valute, lettere accentate e simboli matematici con i relativi codici U+XXXX.

Punteggiatura e simboli

“U+201C ”U+201D ‘U+2018 ’U+2019
–U+2013 —U+2014 …U+2026  U+A0
©U+A9 ®U+AE ™U+2122 °U+B0

Simboli valuta

€U+20AC £U+A3 ¥U+A5 ₹U+20B9
¢U+A2 ₽U+20BD ₩U+20A9 ฿U+E3F

Lettere accentate

éU+E9 èU+E8 êU+EA üU+FC
öU+F6 ñU+F1 åU+E5 øU+F8
çU+E7 ßU+DF ąU+105 žU+17E

Matematica e frecce

±U+B1 ×U+D7 ÷U+F7 ≈U+2248
≠U+2260 ≤U+2264 ≥U+2265 →U+2192
∞U+221E ∑U+2211 √U+221A µU+B5

Domande frequenti

Quali formati di escape Unicode sono supportati?

Questo strumento supporta \uXXXX (BMP), \UXXXXXXXX (Unicode completo), &#DDDD; (entità HTML decimale), &#xHHHH; (entità HTML esadecimale) e U+XXXX (notazione punto di codice) per la decodifica.

Come funziona la codifica UTF-8?

UTF-8 codifica ogni punto di codice Unicode utilizzando da 1 a 4 byte. I caratteri ASCII (da U+0000 a U+007F) usano 1 byte, i caratteri latini e altri comuni usano 2 byte, la maggior parte dei caratteri CJK usa 3 byte e le emoji e i caratteri rari usano 4 byte.

Qual è la differenza tra \u e \U?

\uXXXX usa 4 cifre esadecimali e può rappresentare caratteri nel Piano Multilingue Base (da U+0000 a U+FFFF). \UXXXXXXXX usa 8 cifre esadecimali e può rappresentare qualsiasi carattere Unicode inclusi quelli oltre il BMP.

Perché il mio testo mostra caratteri come «Ã©» o «ï¿½» e come li correggo?

Sono segni di mojibake: byte UTF-8 decodificati come Windows-1252/Latin-1. «Ã©» indica che i due byte UTF-8 di «é» (0xC3 0xA9) sono stati mostrati come caratteri separati. Usa la modalità Correggi. «ï¿½» è U+FFFD: quei byte sono persi per sempre.

Qual è la differenza tra UTF-8 e UTF-16?

UTF-8 codifica i caratteri in 1–4 byte ed è compatibile ASCII: è lo standard del web, di JSON e delle API. UTF-16 usa 2 o 4 byte (coppie surrogate oltre U+FFFF) ed è usato internamente da JavaScript, Java e Windows. Per i testi web UTF-8 è più compatto e sicuro.

Qual è la differenza tra un punto di codice e un'unità di codice?

Un punto di codice è un numero assegnato a un carattere nello standard Unicode (U+00E9 per la e accentata); un'unità di codice è l'unità di archiviazione usata da una codifica. Le unità di codice UTF-8 sono byte a 8 bit - U+00E9 ne occupa due - mentre le unità di codice UTF-16 sono a 16 bit e i caratteri oltre U+FFFF ne richiedono due (una coppia surrogata). Le stringhe JavaScript sono UTF-16, quindi 'hello'.length è 5 ma il .length di un'emoji è 2.

Cosa sono le forme di normalizzazione Unicode e quando sono importanti?

Lo stesso carattere visibile può avere più sequenze di byte: la e accentata come un singolo carattere precomposto (NFC) oppure come e più un accento combinante (NFD). NFC compone, NFD decompone e NFKC/NFKD riportano inoltre i caratteri di compatibilità alla forma base (forme full-width, legature). Confrontare o calcolare l'hash dell'input utente senza normalizzare prima è una classica causa di account duplicati e ricerche non andate a buon fine - legatura fi contro f+i.

Che cos'è un BOM e perché rompe i miei file?

Il byte order mark è U+FEFF codificato all'inizio di uno stream (EF BB BF in UTF-8) per segnalare la codifica. Gli editor di solito lo nascondono, ma a valle diventa un primo carattere invisibile: un'intestazione CSV acquisisce una chiave fantasma, il parsing JSON fallisce per via del token indesiderato e le sessioni PHP lo emettono prima degli header. UTF-8 non ha bisogno di un BOM poiché non presenta ambiguità nell'ordine dei byte - salva senza.

{-- * External Resources Component(#18 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}