英文操作系统,MATLAB编辑器保存与显示中文乱码的两种情况和解决方法

Matlab 保存TXT文件 打开乱码解决 答主最近在做阿里天池心电大赛的数据集,这个数据集是用TXT保存的,打开是这样: 文件中的 I II V1-V6 分别代表了ECG的八大导联,当然这不重要,在使用ecgpuwave之前需要将上面的标记 去除掉 因为我之前在matlab上做预处理的数据最后保存都是司空见惯的MAT格式,但ecgpuwave这个函数没法儿识别MAT格式,只支持TXT格式 一开始,我以为只是简单的用save函数,将保存格式改成“TXT”, 然而,Things won't be so easy. 打开后是这样,全是乱码 阅读详情

英文操作环境下MATLAB编辑器里的中文乱码,应该是有两种情况

1、编辑器输入中文显示乱码(一般是框框等等)

2、编辑器能输入中文正常显示,保存重新打开后变成乱码(一般是??)

统一的解决方法是

①Control Panel,Region,Administrative,Language for non-Unicode Option Set as Chinese(Simplified,China)

②Control Panel,Region,Formats,Format Option Set as Chinese(Simplified,China).

注意,光设置Language for non-Unicode Option是没用的,Format也要一起设。

但是这样有个什么问题呢?系统格式变成中文了,matlab显示语言也变成中文了,如果实验室有其他人和你一起共用会很不好。

精准一些的解决方法是

1、编辑器不能显示中文一般是字体的问题,改字体,有很多教程了,MATLAB,Preferences,Fonts。

2、编辑器能显示中文就不是字体的原因了,保存变乱码考虑是字符集的问题。来看一下

>> feature('locale')

ans = 

  struct with fields:

               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: 'GBK'
         jvmEncoding: 'Cp1252'
              status: 'MathWorks locale management system initialized.'
             warning: ''

这里的en_US.windows-1252是指向Cp1252的一个Name,Cp1252这个小字符集才是关键,其他都不用看了,只要考虑把jvmEncoding: 'Cp1252'这个改掉就行。

找MATLAB目录下的lcdata.xml文件,里面是空的,MATLAB如果读lcdata.xml为空,会使用系统默认的字符集,但是并不代表lcdata.xml文件是没用的,我用的是MATLAB2017,同一个目录下还有一个lcdata_utf8.xml,直接更名成lcdata.xml,搜索windows-1252或者是cp1252,找到节点

        <encoding name="windows-1252" jvm_encoding="Cp1252">
            <encoding_alias name="1252"/>
        </encoding>

改成

        <encoding name="windows-1252" jvm_encoding="UTF-8">
            <encoding_alias name="1252"/>
        </encoding>

保存

重启MATLAB,feature('locale')

中文显示也正常了。

如果没有lcdata_utf8.xml怎么办?确定ctype与jvmEncoding的关联,自己编辑lcdata.xml就行了

按照它的格式

<!--    <codeset> -->
<!--        <encoding name="StandardEncodingName" jvm_encoding="JavaEncodingName"> -->
<!--            <encoding_alias name="AliasName"/> -->
<!--        </encoding> -->
<!--    </codeset> -->

       <codeset> <encoding name="windows-1252" jvm_encoding="UTF-8">
            <encoding_alias name="1252"/>
        </encoding></codeset>

//====================================xisat=================

困扰我几天了,今天下决心来弄好,希望能帮到大家。

MATLAB】命令行窗口乱码问题 昨天开始重新学习matlab,按着网上教程一直配置,将编码格式改成"UTF-8"。但是一旦将编辑器上面的内容在命令行窗口输出就出现乱码的现象。 ​ 阅读详情

相关推荐

三分钟解决Matlab中文乱码问题

三分钟解决Matlab中文乱码问题

林慢慢的博客 5万+

matlab程序中文乱码

第二步:用Notepad++打开文件,点击“Encoding”——Convert to ANSI / Convert to UTF-8换编码格式——保存文件。不同版本的matlab共存在GBK(即,ANSI)UTF-8两种编码方式,因此可能会出现乱码问题。第一步:在matlab的命令行窗口输入指令,查看当前编码方式。第三步:用matlab打开即可。

贾路飞的博客 3356

2016/10/16 关于解决matlab编辑器中文乱码的问题

很久没有写博客上来了,正好今天解决了一点问题,更新上来,也权当是培养习惯了!最近的一个最头疼的问题是我实验室的matlab能够在编辑器中首次输入中文的时候正确显示,但是保存之后再次打开就会变成??。并且,最近有个项目到时间节点了,需要代码50%的注释内容,十分迫切的需要解决这个问题,不然我注释半天,一保存再打开,全没有了(其实我不知道是不是虽然我自己看着乱码,但是在别的电脑上是正常的,按理说应该是在

干点啥呢 8979

Windows-1252字符集(MS1252)造成的困扰

字节损坏, 乱码

zou8944的博客 2万+

为什么你的Matlab中文显示乱码?GBKUTF-8编码原理及换指南

本文深入解析了Matlab中文显示乱码的核心原因,即GBKUTF-8编码的错配。通过对比两种编码的原理差异,文章提供了从诊断脚本文件、数据读写到图形界面显示乱码的完整解决方案,并给出了文件编码Matlab环境配置的实用指南,帮助用户彻底解决这一常见问题。

weixin_29063979的博客 862

如何解决matlab title, xlabel, legend 中文变成方框的问题

如何解决matlab title, xlabel, legend 中文变成方框的问题 存在的问题 很多小伙伴在使用matlab编写程序的时候,会给结果图加上图标题title(’’)来提醒自己运行结果类别。但是在实际操作中会发现,当图标题为英文时可以正常显示,但是图标题中存在中文的时候,中文会变成乱码,即我们肉眼看到的方框。其中原因在于matlab的坐标axes默认字体变成了Helvetica,这种字体不支持中文,因此总是会在画图时显示乱码或方框。我目前使用的版本是matlab 2016b。 解决方案 话

WJR__w的博客 1万+

MATLAB】命令行窗口中文乱码:从编码根源到一劳永逸的解决方案

本文深入解析MATLAB命令行窗口中文乱码问题,提供从诊断到一劳永逸的解决方案。通过配置startup.m文件统一编码环境,确保UTF-8字符集正确字体设置,有效解决编辑器命令行窗口编码不一致导致的乱码问题,适用于不同操作系统MATLAB版本。

weixin_42542669的博客 453

mac matlab 中文乱码,MAC让Matlab编辑器显示中文方法

一些使用英文版MAC系统的用户发现自己安装了matlab之后,无法让它显示中文。这个问题该怎么解决呢?今天小编就为大家解决这个烦恼。下面一起来看看具体的操作步骤吧。具体操作步骤:1. 打开matlab的安装目录(右键点matlab图标选择 show package contents(显示程序包内容))进入matlab的目录了找到 bin目录下lcdata.xml 这个文件2. 获得lcdata.x...

weixin_39715997的博客 544

修改美化MATLAB字体设置

原文地址:http://home.52brain.com/thread-14094-1-1.html MATLAB作为高校理工科类本科生或研究生必不可少的科研工具已经有着很多年的历史,以至于在我们的大学生活里或科研工作中,MATLAB处处闪现着它的身影,给我们带来了不少的帮助便利。而随着MATLAB新版本的逐步推进,目前其功能已经日趋完善。 但比较遗憾的是,经过这么多年的发展,MAT

scoliver的专栏 9194

为什么你的Matlab中文注释会乱码?深入解析编码格式版本兼容性问题

本文深入解析了Matlab中文注释乱码的根本原因,核心在于.m文件的编码格式Matlab版本兼容性问题。文章从ASCII到Unicode的编码历史讲起,剖析了GBKUTF-8编码的差异,并详细阐述了不同Matlab版本对编码处理的演变。针对乱码问题,提供了从诊断、统一团队编码环境(推荐UTF-8)、换历史文件到配置Matlab默认编码的系统性解决方案,并给出了构建编码无忧开发工作流的高级实践建议。

weixin_29057237的博客 620

解决matlab2019b中文乱码问题

当系统语言matlab语言都是英文的时候,打开带有中文注释的.m文件会产生乱码解决方法: 在bin目录下用文本编辑器打开lcdata.xml,将原末尾的: <!-- </locale> --> </lcdata> 增加三行代码,改为: <!-- </locale> --> <codeset> <encoding name="windows-1252" jvm_encoding="GB2

cunane的博客 7360

解决matlab2018A中文乱码问题

原本中文版的matlab2018A在用户将win10的语言变更到英文后,matlab中的中文代码注释之类的会发生乱码。 方案: 在bin目录下用文本编辑器打开lcdata.xml,在末尾的之间增加一下内容: <encoding_alias name=“1252”/> 保存,重启 ...

QQQ的博客 7362

从编码战争到统一标准:MATLAB中文乱码背后的字符集演化史

本文探讨了MATLAB中文乱码问题的根源,揭示了从ASCII到UTF-8的字符集演化历程。通过分析不同编码标准(如GBK、UTF-8)的兼容性问题,提供了解决MATLAB.m文件乱码的实用方案,包括修改默认编码设置批量换文件编码,助力开发者实现跨版本无缝协作。

github5actions的博客 856

MATLAB更换字体后 中文显示乱码问题

MATLAB的脚本代码默认宋体显示,对于大多数720P的显示器来说,无论是中文还是英文显示效果都非常差。Windows环境下,Consolas是一种比较理想的英文代码字体。 Consolas 字体是微软专为程序员开发的一种字体,这一字体的特性是所有字母、数字符号均能非常容易辨认!而且所有字符都具有相同的宽度,让编程人员看着更舒适。但是不支持中文。 微软雅黑是个人电脑上可以显示的最清晰的...

weixin_30711917的博客 1212

高效解决LaTeX中MATLAB代码排版中文兼容性问题

本文针对LaTeX文档中MATLAB代码排版中文兼容性问题,提供了专业解决方案。通过使用matlab-prettifier宏包实现优雅的语法高亮,并详细指导如何将MATLAB源文件编码统一换为UTF-8,彻底解决中文乱码问题,帮助理工科研究者高效生成专业美观的学术文档。

weixin_29079643的博客 341

修改美化Matlab字体

修改美化Matlab字体 MATLAB作为高校理工科类本科生或研究生必不可少的科研工具已经有着很多年的历史,以至于在我们的大学生活里或科研工作中,MATLAB处处闪现着它的身影,给我们带来了不少的帮助便利。而随着MATLAB新版本的逐步推进,目前其功能已经日趋完善。 但比较遗憾的是,经过这么多年的发展,MATLAB中文的支持依然有着...

Tsingke 791

MATLAB 2018b 中文注释乱码?手把手教你修改编码文件,一劳永逸解决GBK/UTF-8问题

本文详细解析了MATLAB 2018b中文注释乱码问题的根源,即GBKUTF-8编码冲突,并提供了从诊断到修改lcdata.xml配置文件的完整解决方案。通过实战案例批处理脚本,帮助用户一劳永逸地解决编码问题,提升工作效率。

weixin_30613343的博客 437
上一篇: 使用KMSmicro搭建局域网KMS服务器
下一篇: 概率,想不明白的问题
xisat
博客等级 码龄24年 31粉丝 24原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值