UTF-8 File is not showing Chinese characters in Excel

3.3k Views Asked by At

I am creating a CSV file with UTF-8 encoding.

It displays the Chinese characters properly if I open it using Notepad++.

It displays the Chinese characters properly if I open it using Notepad.

But, if I open it using Excel, I see garbage values.

If I open it using Notepad and press Control+S and close the file and reopen in Excel, it shows the characters perfectly.

Any clues whats going here?

I also tried to create a normal CSV file which has Encoding GB2312. I then used Unix command iconv to convert the file from "GB2312" to "UTF-8"

This command removes all the Chinese characters and shows only English characters. So, this is not a solution.

Please suggest.

Edit -

It doesn't show Garbage value, but shows ANSI encoding. Why does it picks ANSI encoding by default. And why after opening the same file in Notepad/Notepad++ it opens up with UTF-8.

Also, why just Control+s makes it open in Excel correctly.

1

There are 1 best solutions below

1
On

I was aware of BOM sequence with UTF-8 encoding but was not aware of how to add it in my file.

Now, the BOM sequence is 0xEF,0xBB,0xBF, so I tried add this as plain text but it didn't worked. So, I added the ASCII values of these to my CSV and it works.

ASCII value is =

new.text = chr$(239) & chr$(187) & chr$(191) |Concatenated

Simply add this as 1st line and it works!