Text Encoding Converter
Open text files in legacy encodings (EUC-KR, Shift_JIS, Windows-1252…) as readable UTF-8.
How to use
- Pick the source encoding (most text from older Korean systems is EUC-KR).
- Drag and drop a text file or click to choose one.
- Read the decoded text or switch encoding to compare.
- Copy or download the result as UTF-8.
About this tool
ShowHide
Drop a text file that was saved in something other than UTF-8 and read it correctly here, then download the result as UTF-8. More than twenty legacy encodings are covered — Korean EUC-KR, Japanese Shift_JIS and EUC-JP, Chinese GB18030 and Big5, Cyrillic Windows-1251, Western European ISO-8859-1 and the rest of the Windows code pages — using the decoders built into the browser itself, so the result matches what any other browser would show. Nothing detects the encoding for you, and that is on purpose: bytes alone rarely identify one. Decoding is non-fatal, so a wrong guess fills the text with replacement characters instead of failing, and you simply try the next candidate until the text reads properly.
Frequently asked questions
Why does my file show mojibake (garbled text)?
It was saved in a different encoding than your viewer assumes. Try a different source encoding from the list — EUC-KR for older Korean files, Shift_JIS for Japanese, GB18030 for Simplified Chinese, Windows-1252 for Western European.
Is the file uploaded?
No. The file is read with the browser's TextDecoder API; nothing leaves your device.
How big a file can it handle?
There's no explicit limit, but very large files (hundreds of MB) may slow your browser tab. For huge logs use a dedicated text editor.
Can I convert from UTF-8 to a legacy encoding?
Not in the browser — TextEncoder only outputs UTF-8. This tool is one-way: legacy → UTF-8.
How do I tell which encoding a file actually uses?
By reading it, not by inspecting it. Bytes above 127 are legal in almost every legacy encoding, so nothing in the file announces which one it is — the practical method is to try the likely candidate for the file's origin and see whether the text makes sense. A Korean file is probably EUC-KR, a Japanese one Shift_JIS, a Western European one Windows-1252.
Why can I not convert the other way, into a legacy encoding?
Because the browser only encodes to UTF-8 — TextEncoder supports no other output. That is deliberate on the platform's part: writing a new file in a legacy encoding creates the very problem this tool exists to fix. If a system genuinely requires one, do that conversion where the system lives, with iconv or its own import settings.
Guides on this topic
Related tools
Mojibake Fixer (Repair Garbled UTF-8)
Repair text mangled by a wrong-encoding round-trip — turn café and don’t back into café and don't, automatically and in your browser.
Text
Java .properties Parser
Parse a .properties file exactly as java.util.Properties.load does — separators, escapes, continuations — and see every line that will surprise you.
Developer
Subtitle Time Shifter
Paste an SRT or WebVTT file, type an offset in seconds, and get every cue shifted forward or backward.
File
File Encoding Detector
Upload any text file and detect its encoding — UTF-8, UTF-16 LE/BE, UTF-32, Latin-1, ASCII — with BOM detection, byte signal analysis, and a hex preview.
File
Text to Binary Converter
Convert text to 8-bit binary and back. UTF-8 encoded, so emoji and accented characters work, with a choice of byte separator.
Convert
PE Inspector: Windows EXE and DLL Viewer
Open a Windows .exe, .dll, .sys or .efi in your browser: architecture, subsystem, imports, exports, sections, and whether ASLR, DEP and CFG are on.
File