Matlab 汉字乱码问题
matlab字符乱码显示处理:
默认设置为“桌面代码”,有时候可以解决乱码问题
其他处理方法:
1. 靠谱一点的是这样的:
先在命令窗口执行命令:
然后发现是系统的locale设置和user的不一致,也就是你系统的都是英文的但是你这个文件里面有中文的编码,所以显示就不对了。我执行的结果也是这样的。
然后该教程(参考1)的后面就是教你怎么去设置相关的参数,然后最后解决问题,可是我都按照他的来了,却不行。
2.还有这种玄学的
反正我就是不知道什么原因,照我这么做一遍就对了(参考2)
最后总结一句话:matlab中文乱码,请先在记事本里输入中文,然后复制到matlab里,只需要第一次这样做了,以后你就可以在任意m文件的任意一行输入中文注释了。不要问我为什么,因为我也不知道。。
然并卵。。。
3. 接近答案的方法
还有一种就是给我提供了解决问题思路的,很接近答案的方法(参考3)。
在经过多次查找方法未果之后,终于发现了MATLAB读取区域设置只是跟系统区域中的“格式(Format)”设置有关:
当格式设置成英文的时候,MATLAB便会读取相应的区域。所以解决方法便是在格式中选择"Chinese (Simplified, China)",所有乱码便解决了。
这个确实是对的,只不过只这么做的话还不够,还要另外设置一个选项:
将Administrative选项的Language for non-Unicode programs 设置成简体中文就ok了
接下来我按照参考1的方法在此检验了一下自己MATLAB的locale值显示如下,警告那一栏就已经没了。然后点开有中文注释的程序,显示正常了。
>> feature(\'locale\')
ans =
包含以下字段的 struct:
ctype: \'zh_CN.GBK\'
collate: \'zh_CN.GBK\'
time: \'zh_CN.GBK\'
numeric: \'en_US_POSIX.GBK\'
monetary: \'zh_CN.GBK\'
messages: \'zh_CN.GBK\'
encoding: \'GBK\'
terminalEncoding: \'GBK\'
jvmEncoding: \'GBK\'
status: \'MathWorks locale management system initialized.\'
warning: \'\'
总结
1. 遇上英文版的64位的win10系统下装的英文版MATLAB编辑器中中文注释显示不对的情况,可以先用feature(\'locale\')命令检验一下是否是自己系统的locale settling和软件的user settling不一致导致的。是的话就需要修改参数。
2. 将自己电脑系统的时区格式设置成中文的格式,另外在Administrative选项下的Language for non-Unicode programs选项中修改系统的locale值为简体中文,注意不要勾选beta选项,不然会导致一些其他的带中文显示的程序出现异常。
参考:https://zhuanlan.zhihu.com/p/39298076
请发表评论