千家信息网

如何解决linux运行windows编写的文件出现乱码问题

发表于:2024-09-22 作者:千家信息网编辑
千家信息网最后更新 2024年09月22日,问题:在Windows下用matlab写的代码(.m)文件复制到Linux(Ubuntu)下,注释的中文全是乱码,反之,也是一样的问题。原因:Windows下默认使用的是GB2312编码,Linux默
千家信息网最后更新 2024年09月22日如何解决linux运行windows编写的文件出现乱码问题

问题:

在Windows下用matlab写的代码(.m)文件复制到Linux(Ubuntu)下,注释的中文全是乱码,反之,也是一样的问题。

原因:

Windows下默认使用的是GB2312编码,Linux默认使用的是UTF-8。 所以在Windows下产生的代码是GB2312编码,在Linux下当然识别为乱码 ; 反之,同理乱码 。

解决方法:

直接对文件编码格式进行转码。

使用linux下的iconv命令改变文件的编码:

test1.m由GB2312转换成UTF-8(windows下matlab的代码在linux下运行)

iconv  -f  GB2312  -t  UTF-8  test1.m  -o  test1.m

test2.m由UTF-8转换成GB2312(linux下matlab的代码在windows下运行)

iconv -f  UTF-8  -t  GB2312  test2.m  -o  test2.m

如果文件过多,要进行批处理,可用如下编写的shell脚本批量转换编码。

使用方法: 将该脚本放在需要进行转换的文件夹中, 执行脚本,可以将当前目录和其子目录下的所有文件转换成指定的编码方法 。

执行如下:

由GB2312转换成UTF-8

./convertMatlab.sh  win

由UTF-8转换成GB2312

./convertMatlab.sh  linux

提示: 普通用户没有执行权限,需要用chmod +x convertMatlab.sh 增加执行权限

扩展:

1.Linux操作系统

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。

它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2.Windows操作系统

Microsoft Windows操作系统是美国微软公司研发的一套操作系统,它问世于1985年,起初仅仅是Microsoft-DOS模拟环境,

后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统。

3.二者的区别

(1).使用的费用不同

Linux是一项开源的项目,所以它免费提供给编程爱好者使用,

而Windows则是需要购买的一款系统,目前最新的正版Windows系统售价888元。

(2).适合使用对象不同

Linux适合企业公司服务器系统架构,而Windows适合大众使用。

(3).操作风格不同

Windows是面向大众化的,所以操作上比较符合普通人的操作习惯,大多都是通过界面化的操作。

而Linux在很多情况下需要通过命令行来进行操作。

(4).支持的软件不同

Windows由于使用人数较多,所以支持Windows的软件在数量和质量上都比Linux有优势。

Linux平台只有开发者维护,缺少资金的大量支持,所以软件方面的数量和质量比较缺乏。

(5).文件格式不同

Windows 操作系统内核是NT,而Linux 是 shell。

(6).安全性不同

Windows系统常常成为黑客和病毒的攻击目标,所以需要安装一些安全防护软件来保护计算机的安全。

而Linux相比较Windows来说则安全很多,使用Linux是完全不需要安装额外的安全软件。

(7).可定制性不同

Windows的操作范围大多已经受到微软的限制,所以基本上是系统怎样设置,用户就只能规矩操作。

而Linux提供了更高的定制性,它支持开发者通过编码来定义适合自己的操作系统。

(8).程序可移植性不同

Windows的程序可移植性差,程序基本不兼容Linux.

而Linux程序的可移植性好,不仅可以在不同的Linux之间移植,还可以移植到Windows上面来。

以上就是linux中运行windows中编写的文件出现乱码的详细内容,更多请关注其它相关文章!

系统 操作系统 不同 文件 编码 软件 UTF-8 支持 安全 程序 移植 乱码 运行 代码 用户 方法 移植性 网络 脚本 微软 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 密码编码学与网络安全教材 末日觉醒本地服务器好卡 数据库怎样删除表中所有数据 聚鑫网络技术有限公司 紫天科技互联网广告收入排行 征途数据库操作工具免费绿色版 安全教育观后感网络安全 数据库技术及运用答案 公安网络安全培训计划 保证网络安全最重要的策略是 网络安全三年级海报简单文字内容 医院门诊数据库设计 数据库学习笔记第二章关系数据库 新基建需要网络安全观吗 各种软件开发教程 学生网络安全与道德 网络技术教育专业就业 徐州软件开发培训学校 开创网络安全发展 微信清理僵尸粉软件开发 vivo软件开发工作强度 网络安全立法重点难点 医院门诊数据库设计 中文文献数据库搜索 sql 数据库序列号如何查看 蓝海灵豚主数据库断网 国外什么服务器好 如何整合中药成分来源数据库 数据库字段密码解密在线 工作站服务器
0