Unicode-dekoder
Konverter mellom Unicode-escape og tekst, slå opp kodepunkter, og reparer ødelagt tekst (mojibake). Støtter \uXXXX, \UXXXXXXXX og &#XXXX;-entiteter. All behandling skjer i nettleseren din.
Resultatet vises her ...
Tegninformasjon
| Tegn | Kodepunkt | UTF-8-byte | HTML-entitet | CSS-escape | JS-escape |
|---|
Slik bruker du Unicode-dekoderen
Velg modus
Velg modus Dekode (escape til tekst) eller Kode (tekst til escape).
Skriv inn data
Lim inn Unicode-escape eller ren tekst avhengig av modus.
Konverter
Klikk Konverter og se gjennom resultatet og tegndetaljene.
Hva er Unicode-koding?
Unicode-koding gjør at tegn fra alle språk og symbolsystemer kan representeres i ulike formater. Vanlige formater er \uXXXX (JavaScript/JSON), &#NNNNN; (HTML-entiteter) og U+XXXX (Unicode-kodepunkter). Disse kodingene sikrer at tekst trygt kan overføres og vises på tvers av systemer.
Kodingsformater
JavaScript (\uXXXX)
Brukes i JSON- og JavaScript-strenger
HTML-entiteter (&#XXXX;)
Brukes i HTML for å representere spesialtegn
CSS-escape (\XXXXXX)
Brukes i CSS content og identifikatorer
Reparer ødelagt tekst (mojibake-reparasjon)
Ødelagt tekst (såkalt mojibake) oppstår når tekst kodet i ett tegnsett dekodes med et annet. Vanligste tilfelle: UTF-8-byte tolkes som Windows-1252 eller Latin-1, slik at "café" blir "café" og "张三" blir "å¼ ä¸‰". Bytt til Reparer ødelagt tekst-modus ovenfor, lim inn den ødelagte teksten, og dekoderen gjenoppbygger de opprinnelige tegnene ved å behandle hvert tegn som en rå byte og dekode resultatet på nytt som UTF-8.
Vanlige eksempler på ødelagt tekst
| Ødelagt | Reparert | Årsak |
|---|---|---|
| café | café | UTF-8 → Latin-1 |
| å¼ ä¸‰ | 张三 | UTF-8 → Latin-1 |
| “hi†| “hi” | UTF-8 → double-encoded |
| ü ö ñ | ü ö ñ | UTF-8 → Windows-1252 |
| �� | � � | byte allerede tapt (U+FFFD) |
For å forhindre mojibake i egne apper, alltid deklarer kodingen eksplisitt: server HTML med <meta charset="UTF-8">, sett HTTP-headere som Content-Type: text/html; charset=utf-8, og bruk UTF-8 konsekvent i databaser og tilkoblinger.
Sammenligning av UTF-8 vs UTF-16 vs UTF-32
| UTF-8 | UTF-16 | UTF-32 | |
|---|---|---|---|
| Kodingsenhet | 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 |
| Best egnet for | Web, JSON, APIer — ASCII-kompatibel og kompakt | Tekst i minnet i Java, JavaScript, C# | Direkte kodepunkttilgang, sjeldent i praksis |
Vanlige Unicode-kodepunkter
Rask referanse for ofte slått opp tegn: tegnsetting, valutasymboler, aksenttegn og matematisktegn, med U+XXXX-kodepunktene deres.
Tegnsetting og symboler
| “U+201C | ”U+201D | ‘U+2018 | ’U+2019 |
| –U+2013 | —U+2014 | …U+2026 | U+A0 |
| ©U+A9 | ®U+AE | ™U+2122 | °U+B0 |
Valutasymboler
| €U+20AC | £U+A3 | ¥U+A5 | ₹U+20B9 |
| ¢U+A2 | ₽U+20BD | ₩U+20A9 | ฿U+E3F |
Aksenttegn
| éU+E9 | èU+E8 | êU+EA | üU+FC |
| öU+F6 | ñU+F1 | åU+E5 | øU+F8 |
| çU+E7 | ßU+DF | ąU+105 | žU+17E |
Matematikk og piler
| ±U+B1 | ×U+D7 | ÷U+F7 | ≈U+2248 |
| ≠U+2260 | ≤U+2264 | ≥U+2265 | →U+2192 |
| ∞U+221E | ∑U+2211 | √U+221A | µU+B5 |
Vanlige spørsmål
Verktøyet støtter \uXXXX (BMP), \UXXXXXXXX (hele Unicode), &#DDDD; (desimal HTML-entitet), &#xHHHH; (heksadesimal HTML-entitet) og U+XXXX (kodepunktnotasjon) for dekoding.
UTF-8 koder hvert Unicode-kodepunkt med 1 til 4 byte. ASCII-tegn (U+0000 til U+007F) bruker 1 byte, latinske og andre vanlige tegn 2 byte, de fleste CJK-tegn 3 byte, og emoji og sjeldne tegn 4 byte.
\uXXXX bruker 4 heksadesimale siffer og kan representere tegn i Basic Multilingual Plane (U+0000 til U+FFFF). \UXXXXXXXX bruker 8 heksadesimale siffer og kan representere alle Unicode-tegn, inkludert dem utenfor BMP.
Dette er tegn på mojibake: UTF-8-byte ble dekodet som Windows-1252/Latin-1. "é" betyr at de to UTF-8-bytene i "é" (0xC3 0xA9) ble vist som to separate tegn. Bruk Reparer ødelagt tekst-modus for å fikse det. "�" er U+FFFD, erstatningstegnet som lages når byte allerede var ugyldige - den informasjonen er tapt og kan ikke gjenopprettes.
UTF-8 koder tegn i 1–4 byte og er fullt ASCII-kompatibel, noe som gjør den til standarden for web, JSON og de fleste APIer. UTF-16 koder tegn i 2 eller 4 byte (med surrogatpar for tegn utenfor U+FFFF) og brukes internt av JavaScript, Java og Windows. For mesteparten av tekst på weben er UTF-8 mindre og tryggere.
Et kodepunkt er et tall tilordnet et tegn i Unicode-standarden (U+00E9 for e-akutt); en kodeenhet er lagringsenheten en koding bruker. UTF-8-kodeenheter er 8-bit byte - U+00E9 krever to - mens UTF-16-kodeenheter er 16-bit, og tegn utenfor U+FFFF trenger to av dem (et surrogatpar). JavaScript-strenger er UTF-16, så 'hello'.length er 5, men .length for en emoji er 2.
Samme synlige tegn kan ha flere bytesekvenser: e-akutt som ett forhåndssammensatt tegn (NFC) eller e pluss en kombinerende aksent (NFD). NFC komponerer, NFD dekomponerer, og NFKC/NFKD bretter i tillegg kompatibilitetstegn (fullbreddeformer, ligaturer). Å sammenligne eller hashe brukerinndata uten å normalisere først er en klassisk kilde til dupliserte kontoer og mislykkede oppslag - fi-ligatur vs f+i.
Byte-rekkeførgemerket er U+FEFF kodet i starten av en strøm (EF BB BF i UTF-8) for å signalisere kodingen. Redigerere skjuler det vanligvis, men nedstrøms blir det et usynlig første tegn: en CSV-header får en spøkelsesnøkkel, JSON-tolking feiler på det villfarne tokenet, og PHP-økter sender det før headere. UTF-8 trenger ingen BOM siden den ikke har tvetydighet i rekkefølge - lagre uten den.
Relaterte verktøy
Hex-dekoder
Konverter mellom heksadesimal og tekst — støtter konfigurerbare skilletegn og prefiksvalg
HTML-entity-dekoder
Kod og dekod HTML-entities — konverter mellom spesialtegn og entity-referanser
Base64-dekoder og URL-parser
Dekod og kod Base64, parse URL-kodede strenger, forhåndsvis Base64-bilder og dekod JWT-header- eller payload-segmenter
Autoritative referanser
Primærkildene bak dette verktøyet — offisielle standarder og spesifikasjoner, ikke andrehånds sammendrag.