MATLAB版本:R2017a及后续版本
在MATLAB安装目录bin下找到lcdata_utf8.xml文件打开
删除
<encoding name="GBK">
< encoding_alias name="936">
</encoding>
并将
<encoding name="UTF-8">
<encoding_alias name="utf8"/>
</encoding>
改为
<encoding name="UTF-8">
<encoding_alias name="utf8"/>
<encoding_alias name="GBK"/>
</encoding>
最后将lcdata_utf8.xml文件重命名为lcdata.xml后重启MATLAB
另外,如果在预设中找不到对应的中文字体,如consolas with yahei或者consolas yahei hybrid字体,可把ttf文件复制到\MATLAB\R2018a\sys\java\jre\win64\jre\lib\fonts
下重启MATLAB。
19.3.12更新:
发现了一个新的奇葩问题,在编辑器中显示中文字符没有任何问题,在命令行中输入中文字符串命令也没问题,但是在运行时所有字符串就会出问题,甚至Ctrl+Enter
单独运行节的时候都没问题,这时添加一条feature('DefaultCharacterSet','UTF-8')
到startup.m中可解决。