Character encoding detector & converter
Compare candidate character encodings for a file by viewing the text, then convert it to the encoding required by the recipient and save it. Text and hexadecimal input are also supported.
What you can do
Compare text and choose how to decode it
Display encodings that can decode a file or hexadecimal data. View the text for each candidate and choose the encoding to use.
Convert for the recipient
Choose the output encoding from 6 formats: UTF-8, UTF-16 LE/BE, Shift_JIS variants, EUC-JP, and ISO-2022-JP.
Create a file only when the text can be preserved
Decode the result again after conversion to confirm it matches the text. Characters that cannot be represented are never replaced with “?” and saved.
How to use
Enter the content to convert
Paste text or select 1 file. For hexadecimal input, enter it and click “Find candidate encodings.”
Check candidates for file or hexadecimal input
Compare the text shown for each candidate and choose the one that reads correctly. If there is only 1 candidate, it is already selected, so check its text.
Choose the output encoding
Choose the encoding specified by the recipient. If a BOM is needed for UTF-8 or UTF-16, open advanced settings and add it.
Convert and download
Click “Convert and create file” and save the generated file. You can also check or copy the output hexadecimal data as needed.
Useful when
Read a CSV or text file you received
Use it to find an encoding that correctly displays the contents of an original CSV or text file that appears garbled.
Share data in a specified encoding
Use it to change the character encoding to suit the recipient's system and prepare a text file to share.
What to check when choosing an encoding
How characters map to byte sequences
The same characters are saved as different byte sequences depending on the encoding. Opening the data with an encoding different from the one used to save it may cause it to be read as different characters.
Check the text even with only one candidate
Being able to decode the input does not confirm the original encoding. Short inputs or inputs containing only letters and digits may produce the same text with several candidate encodings. Check the text against the settings used to create it.
A BOM is a marker indicating an encoding
Follow the recipient’s requirements when deciding whether to add a BOM. This tool lets you optionally add one for UTF-8 and UTF-16. A BOM matching the input encoding is removed from the text during decoding.
When original data is lost
Data that was opened with the wrong encoding and saved again, or data with missing characters, cannot always be restored. If the original file still exists, check that file instead.
CSV delimiters and line breaks are preserved
Only the encoding is changed. The tool does not adjust CSV columns, delimiters, quotes, or line breaks, or rewrite table values.
Frequently asked questions
Is the automatically detected encoding definitive?
No. The candidates shown are encodings that can read the input without treating it as an invalid byte sequence. Choose by checking against the text and the settings used to create it. If there are multiple candidates, the tool does not automatically choose one.
Can I convert text containing emoji to Shift_JIS?
If the output encoding cannot represent the entire text, an error occurs. The tool does not replace characters and continue. Choose UTF-8 or UTF-16.
Can the original encoding be detected from pasted text?
For text input, the characters received by the browser are converted to the specified encoding. To examine the original byte sequence, enter a file or hexadecimal data.
Are parts not shown in the preview also saved?
Yes. Each candidate’s text preview is limited to the first 400 UTF-16 code units, decoded text to the first 10,000 UTF-16 code units, and output hexadecimal data to the first 4,096 bytes. Saving files and copying hexadecimal data include the entire output.
Can I create a file from empty text?
Yes. Without a BOM, the file is 0 bytes. With a BOM, the file contains only that marker.
Input and results
- Input
- Files and hexadecimal data: up to 256 KiB (262,144 bytes). Text: up to 100,000 UTF-16 code units. Emoji and some other characters use multiple units.
- Output
- Up to 256 KiB per file. The filename combines the encoding name and the original filename. For text or hexadecimal input, the original name is treated as text.txt.
- Changing settings
- Changing the input, decoding candidate, output encoding, or BOM clears the previous output. Convert again with the new settings.