Matlab 乱码问题解决方法

以下是我自己总结的两种解决乱码问题的方法,大家可以选择自己需要的方法解决问题,也可以一个方法一个方法的试一下。我使用matlab的版本为2019a\2019b\2020a,采用第二种方法解决了问题,默认编码格式为GBK。

1、由于字体原因打开MATLAB出现乱码问题,在里面输入命令也全是一堆乱符。

问题成因:MATLAB的默认字体是 Monospaced(等宽字体),其非常适合用于显示程序源代码,但Monospaced是种逻辑字体。其可在不同语言和操作系统上映射为不同的物理字体:在中文Vista操作系统下,Monospaced字体被映射到宋体-18030上,因而产生乱码。如需纠正,下载 “宋体-18030”字体,并将其放入系统字体库即可;或者 只要将MATLAB的默认字体改为其它任意一种字体即可避免出现乱码。

解决方案:单击“主页”>“预设”>“字体”,将桌面代码字体改为Microsoft Yahei UI,取消勾选使用系统字体,选择Microsoft Yahei UI,点击应用。(也可以选择自己中意的字体,如微软雅黑)
在这里插入图片描述

选择自定义,点击命令行窗口,选择自定义,前三项命令行窗口、命令历史记录、编辑器都选择自定义,选择Microsoft Yahei UI,点击应用。
在这里插入图片描述
2、由于编码问题打开MATLAB出现乱码问题。(查看编码格式可以用notepad++打开文件)

问题成因:由于编码格式不一致导致出现乱码问题,在命令行输入命令:feature(‘locale’)。若显示结果如下图所示,出现warning,代表编码格式不一致。System locale与User locale设置不一样,System locale设置了zh_CN,而User locale设置了en_US。
在这里插入图片描述

而如果显示结果如下图所示,无warning即可知道编码格式一致,以下编码格式为GBK。
在这里插入图片描述
解决方案:以下完成每一步操作,可再次打开matlab查看问题是否解决。

第一步:打开“控制面板”>“时钟和区域”>“更改日期、时间和数字格式”>“格式”选择中文(简体,中国)。
在这里插入图片描述

然后点击“管理”>“更改系统区域设置”>“当前系统区域设置”为中文(简体,中国)。注意不要勾选beta选项,不然会导致一些其他的带中文显示的程序出现异常。

在这里插入图片描述
第二步:如果你当前系统的区域设置就是中文简体,可能就是单纯的编码问题。

找到MATLAB的根目录,通常是C:\Program Files\Polyspace\R2020a\bin,找到lcdata_utf8.xml文件(在R2017以及之后的版本中lcdata.xml 是仅包含注释的空文件,需要将 lcdata_utf8.xml 重命名为 lcdata.xml ,然后进行以下修改操作)。
在该文件中找到这一行,把 encoding="XXx" 改为你想要的编码,如果需要改成GBK,则将下图“UTF-8”替换成“GBK”,然后再保存重启MATLAB。

在这里插入图片描述
如果想以UTF-8编码,而不是GBK编码的话,在该文件中找到这几行,将其删除。(如果用GBK编码,则保留) 在这里插入图片描述

然后再在文件中找到这几行,对其进行修改。
在这里插入图片描述

修改为如下图所示,最后重启MATLAB。

在这里插入图片描述
第三步:查看乱码的文件的格式为GB2312(即GBK)还是UTF-8,可在官网https://notepad-plus-plus.org/downloads/v7.8.9/下载notepad++查看格式。如果格式不统一,则进行转换。
在这里插入图片描述
如:将UTF-8编码的文件转换成GBK, 用notepad++打开一个GBK编码的文件,然后把UTF-8编码的文件粘到GBK编码的文件中,实现编码转换,最后再另存为。

  • 37
    点赞
  • 101
    收藏
    觉得还不错? 一键收藏
  • 9
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值