Text File Encoding Converter

Detects the encoding and line endings of text files and converts them to UTF-8, UTF-8 with BOM, EUC-KR (CP949), Shift_JIS, Windows-1252 or UTF-16 LE.

Loading…

How to use

  1. Drop one or more text files onto the box, or choose them with the file button.
  2. For each file, check Detected and Line endings, and open Preview to see the first 500 characters. “(guess)” means the file was read with the encoding set in “If not UTF-8, read as”.
  3. If the preview is garbled, change “If not UTF-8, read as” to EUC-KR (CP949), Shift_JIS or Windows-1252.
  4. Pick the target under “Convert to”: UTF-8, UTF-8 (BOM), EUC-KR (CP949), Shift_JIS, Windows-1252 or UTF-16 LE.
  5. Press “Download as …” for one file or “Download all” for every converted file (your browser may ask whether to allow multiple downloads); “Copy text” copies the decoded text and Clear empties the list.

Frequently asked questions

Are my files uploaded?
No. Files are read and converted in your browser and never leave your device.
How is the encoding detected?
A byte order mark (BOM) for UTF-8 or UTF-16 LE/BE is checked first; without one, a file that is valid UTF-8 is shown as UTF-8, or as ASCII if it has only ASCII bytes. Anything else is read with the encoding in “If not UTF-8, read as” and marked “(guess)”; this defaults to EUC-KR on Korean pages, Shift_JIS on Japanese pages and Windows-1252 in other languages. If even that fails, Unknown is shown and unreadable bytes become �.
Why are some characters replaced with “?”
The target encoding can’t represent them (for example emoji in EUC-KR or Shift_JIS). Convert to UTF-8 to keep every character.
Are line endings or file names changed?
No. Line endings (CRLF, LF or CR) are only shown and kept as they are, and the downloaded file keeps its original name. UTF-8 (BOM) adds a BOM at the start, and UTF-16 LE output is always written with a BOM.
Why was my file skipped as binary?
A file without a BOM is treated as binary if its first 8 KB contain a zero byte (0x00), which ordinary text files don’t have. UTF-16 files saved without a BOM also contain zero bytes, so they are skipped too.