Why won't the editor display Chinese characters?

I can't figure out how to get the editor to display Japanese characters. If I enter the following in the command prompt:
'yyyy年 MM月 dd日'
The interpreted value returns as:
ans =
yyyy MM dd
The Chinese characters are ignored. This seems like unusual behavior to me. Even worse, if I save the text string in a file and re-open it, the Chinese characters are replaced by '?' marks. Is there a work-around for this?

1 Comment

Try the following solution: https://uk.mathworks.com/matlabcentral/answers/280988-how-do-i-get-my-matlab-editor-to-read-utf-8-characters-utf-8-characters-in-blank-squares-in-editors

Sign in to comment.

Answers (4)

i just found other solution for that, you need open your code open with notpad++ and it will show you all other language comments
NOTE; i will not work with simple notepad ,,, so you need Notepad++
捕获.PNG

2 Comments

Respect bro, this info was really useful
sorry i did not understand?

Sign in to comment.

Walter Roberson
Walter Roberson on 29 Aug 2016
Edited: Walter Roberson on 30 Aug 2016

3 Comments

I appreciate the help, but it seems like they other posters hit a dead end too. I tried changing my lcdata.xml file as below, but the changes aren't being recognized by Matlab on a restart.
<locale name="en_US" encoding="UTF-8" xpg_name="en_US.UTF-8">
<!--<locale name="en_US" encoding="ISO-8859-1" xpg_name="en_US.ISO8859-1">-->
<alias name="en"/>
<alias name="en-US"/>
</locale>
Seems weird, right?
>> feature('locale')
ans =
ctype: 'en_US.windows-1252'
collate: 'en_US.windows-1252'
time: 'en_US.windows-1252'
numeric: 'en_US_POSIX.windows-1252'
monetary: 'en_US.windows-1252'
messages: 'en_US.windows-1252'
encoding: 'windows-1252'
terminalEncoding: 'IBM437'
jvmEncoding: 'windows-1252'
status: 'MathWorks locale managem...'
warning: ''
Which MATLAB version are you using?
I'm on 8.3.0.532 (R2014a).

Sign in to comment.

"Those Chinese comments in a M-file became strange symbols after re-open in Matlab Editor (even anyelse editors). The problem lies in the setting of "Standards and formats" setting of "Regional and Language Options". Set it to "Chinese (PRC)" and then the problem solved. Thus, it seems that Matlab read location information from this section and determine the lunguage with which it displays and stores contents."

1 Comment

I'm not Chinese and I'm afraid that setting my locale to 'China (PRC)' will have all sorts of unintended (and undesired) consequences. How do I set a 'locale' that uses UTF-8 in U.S. English?

Sign in to comment.

Well, I use VSCode to open the Matlab .m file, and resave with GBK encoding. (bottom right button of the VSCode interface next to Spaces) (Well, I try with different types of encoding, and only this one works)
After that, Matlab can display the Chinese characters with no issues.

2 Comments

well, I tried this method. Not working for me. Every time I reopen the file, the enconding format changed backed into UTF-8.

Sign in to comment.

Categories

Asked:

on 29 Aug 2016

Commented:

on 17 May 2023

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!