0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MATLAB课程之第五章v3 文件操作(4)

通信工程师专辑 来源:未知 2023-12-11 08:20 次阅读

继续讲解!

wKgZomV2Vb6ARWERAAVu44EZlQ0491.png

数字信号处理领域,很多数据的保存形式都是文本文件!有了数据,这样就可以在计算机中完成半实物仿真了!什么是半实物仿真?就是仿真出来的结果基本和产品一致!那还有什么仿真?理论仿真!这个阶段的仿真只是用于验证理论是否可行!大家以后到了企业,必然会接触到这些概念!

wKgZomV2Vb6AWM3XAAAHCaxgszk549.gif

注意!

If you plan to read the file with Microsoft Notepad, use ' ' instead of ' ' to move to a new line.

举例:如何把成绩单里面的成绩从高到低排列呢?

这可是日常工作中经常遇到的哦。学以致用!举例说明!

file_fid3 = fopen('d:score.txt','r'); % 读取成绩文件

for i = 1:5

data1_name(i) = fscanf(file_fid3 ,'%s',1);

data1_score(i) = fscanf(file_fid3 ,'%d',1);

end

fclose(file_fid3);

% 读取数据成功后,进行成绩排序。

[data2_score , score_index] = sort(data1_score,'descend');

file_fid4 = fopen('d:score_sort.txt','w');

for i = 1:5

fprintf(file_fid4,'%6s %d ',student_name(score_index(i)), data2_score(i));

end

fclose(file_fid4);

wKgZomV2Vb-AJi1tAAFfhTvkZpQ546.png

那要怎样才能读取呢?必须使用fscanf函数!还有其他读取文件的方式吗?有!!!

A = readmatrix(filename)

通过从文件中读取列向数据来创建数组。readmatrix 函数可自动检测文件的导入参数。这个函数原来用途这么广啊?大家已经在前面的文章中多次见到了!

readmatrix 基于文件的扩展名确定文件格式:

.txt、.dat 或 .csv(适用于带分隔符的文本文件)

.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(适用于电子表格文件)

对于包含数值和文本混合数据的文件,默认情况下,readmatrix 将数据作为数值数组导入。这么好用的函数,大家一定要记住用法哦!

wKgZomV2Vb6AWM3XAAAHCaxgszk549.gif

文件知识!

逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。纯文本意味着该文件是一个字符序列,不含必须像二进制数字那样被解读的数据。CSV文件由任意数目的记录组成,记录间以某种换行符分隔;每条记录由字段组成,字段间的分隔符是其它字符或字符串,最常见的是逗号或制表符。

通常,所有记录都有完全相同的字段序列。通常都是纯文本文件。建议使用WORDPAD或是记事本来开启,再则先另存新档后用EXCEL开启,也是方法之一。

.dat并不是一种标准文件。许多文件都使用这个扩展名,但文件含义不同。而许多数据分析软件也用这个扩展名保存数据。所以这要看具体的软件情况来定。

wKgZomV2Vb6AWM3XAAAHCaxgszk549.gif

现在我首推使用readmatrix函数!

wKgZomV2Vb-AJ8HmAAEkZA5wqtM689.png

wKgZomV2Vb-AWXHbAALrnCIDXcw047.png

语法!

A = readmatrix(filename)

从文件中读取矩阵。readmatrix 基于文件的扩展名确定文件格式:.txt、.dat 或 .csv(适用于带分隔符的文本文件)、.xls、.xlsb、.xlsm、.xlsx、.xltm、.xltx 或 .ods(适用于电子表格文件)

readmatrix第一个参数是文件名。第二个参数指输出类型。如果不带这个参数,那么遇到字符串输出的结果是Nan值。本人非常喜欢用这个函数,简单直接和强大!

csvread函数还没有用过!文件的操作会涉及哪些函数呢?可以总结一下了。课程只是讲解了fopen和fwrite函数,那么fprintf和fclose函数呢?先一起来看看程序吧。实际编写操作是王道。这个程序可是学生写的哦!现在的他早已经毕业,也不知从事什么工作?多么希望我能多培养一些研发人员啊!科技进步才能真正改变世界!

wKgZomV2Vb-AK5K8AAAHCaxgszk698.gif

回顾过往!

wKgZomV2Vb-AA2NFAABaXH60_yQ885.png

wKgZomV2Vb-AK5K8AAAHCaxgszk698.gif

wKgZomV2Vb-AZQFEAACuY-fhqFg324.jpg

wKgZomV2Vb-AK5K8AAAHCaxgszk698.gif

再回首!

这是当年上我课的大一学生写的。他从最开始几乎不懂编程,到慢慢的能够入门。说明他很勤奋!就需要这样一步一步的实践,才能把工科之路走踏实了!大一的小李同学课后坚持学习,从最开始连简单的程序都看不懂,到后来慢慢的可以跟着我的步伐写程序,再到独立写程序了。很棒!但是他的英语底子很薄弱,一直没有补起来。这是一个遗憾,我当年一直想帮他补习英语,坚持了两周后,他放弃了。非常可惜!

学习就是这样的过程。从不懂到懂肯定需要花很多功夫。光靠看别人的程序就想提升自己?基本不可能。

那是做梦!

wKgZomV2Vb-AK5K8AAAHCaxgszk698.gif

wKgZomV2Vb-AE2IQAAD_xGsk4FQ927.png

了解工科类专业的学习方法!

wKgZomV2Vb6AWM3XAAAHCaxgszk549.gif

wKgZomV2VcCAQfyAAAouw5gO9Tg725.png

wKgZomV2Vb6AWM3XAAAHCaxgszk549.gif

继续看视频吧!

接着让自己脑洞大开吧!第四天,继续给学生们直播讲课!后续还会讲,总共策划了有十几节课呢。

2023年12月,课堂上的讲解视频来了!互联网时代的特色,手机上也能听课。

请特别注意二进制文件的存储方式,比较一下和文本文件存储的差异。未完,待续!

wKgZomV2VcCAW6DUAAAgWrkkT7Y410.gif

修订记录

20230418 完成初稿;

20230831 修订内容v2;

20231211 修订内容v3;


原文标题:MATLAB课程之第五章v3 文件操作(4)

文章出处:【微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 通信网络
    +关注

    关注

    21

    文章

    2043

    浏览量

    52094

原文标题:MATLAB课程之第五章v3 文件操作(4)

文章出处:【微信号:gh_30373fc74387,微信公众号:通信工程师专辑】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    瑞声科技助力雷鸟V3 AI拍摄眼镜发布

    近日,雷鸟V3 AI拍摄眼镜正式发布,并首次亮相于2025 CES现场,吸引众多用户驻足体验。雷鸟V3搭载高通骁龙AR 1芯片、高精度摄像头,以及多模态AI,为用户带来AI智能化体验。 在声音方面
    的头像 发表于 01-10 16:43 176次阅读

    虹软AI视觉赋能雷鸟V3 AI拍摄眼镜发布

    近日,雷鸟创新正式发布全新一代AI拍摄眼镜——雷鸟V3。该产品搭载多项创新技术,包括融合虹软AI视觉算法的猎鹰影像系统、通义独家定制大模型、高通骁龙AR1 Gen 1芯片平台以及定制扬声器等诸多创新
    的头像 发表于 01-08 10:58 226次阅读

    华为-射频基础知识培训

    课程目标z 熟悉和掌握射频基本概念和知识z 了解无线射频系统结构z 了解天馈系统的概念和知课程内容第一 无线通信的基本概念第二 射频常用计算单位简介第三
    发表于 12-10 13:39 1次下载

    《DNESP32S3使用指南-IDF版_V1.6》第五章 搭建开发环境

    第五章 搭建开发环境 在前面章节中,我们已经大致了解了ESP32-S3基础知识及ESP-IDF物联网开发框架的编译与链接原理,现在,我们将进入实际操作阶段,逐步搭建ESP-IDF的开发环境。本章分为
    发表于 12-02 14:28

    第5 MATLAB程序设计.ppt

    第5 MATLAB程序设计
    发表于 10-24 16:40 0次下载

    迅为电子RK3588S开发板第五章 Debian系统功能测试

    迅为电子RK3588S开发板第五章 Debian系统功能测试 迅为iTOP-3588S开发板采用瑞芯微RK3588S处理器,是全新一代AloT高端应用芯片,搭载八核64位CPU,四核
    的头像 发表于 10-15 15:59 1034次阅读
    迅为电子RK3588S开发板<b class='flag-5'>第五章</b> Debian系统功能测试

    浅析SDIO协议V2和V3版本的区别

    。这得益于V3在设计和实现过程中可能采用了更先进的加密和认证机制。 4. 支持的协议 V2 :支持的协议种类更多,包括IPv4、IPv6、PPTP、L2TP、IPSec等。这使得
    发表于 09-18 08:32

    《DNK210使用指南 -CanMV版 V1.0》第五章 编译CanMV固件

    第五章 编译CanMV固件 上一节中已经搭建好了基于CanMV的C开发环境,这么一来便可以进行基于C语言和FreeRTOS的应用开发或者编译基于MicroPython语法的应用开发方式所需
    发表于 09-07 10:56

    【北京迅为】《stm32mp157开发板嵌入式linux开发指南》第五章 Ubuntu使用apt-get下载

    【北京迅为】《stm32mp157开发板嵌入式linux开发指南》第五章 Ubuntu使用apt-get下载
    的头像 发表于 09-03 16:26 819次阅读
    【北京迅为】《stm32mp157开发板嵌入式linux开发指南》<b class='flag-5'>第五章</b> Ubuntu使用apt-get下载

    第五章-PWM控制电机 开源stm32循迹小车详细制作过程(附加完全版代码)

    ://www.bilibili.com/video/BV16x4y1M7EN/?spm_id_from=333.337.search-card.all.click V3:HAL库开发、功能:PID速度控制、PID循迹、PID跟随、遥控、避障、PID角度控制、视觉控制、电
    的头像 发表于 08-21 16:49 686次阅读
    <b class='flag-5'>第五章</b>-PWM控制电机 开源stm32循迹小车详细制作过程(附加完全版代码)

    如何通过Miniwiggler V3将labview程序闪存到微控制器?

    我正试图通过 Miniwiggler V3 将 labview 程序闪存到微控制器中,但我找不到任何说明如何操作的文档。 我是新手,有没有什么方法可以直接闪存程序?
    发表于 07-04 06:00

    TSER953 4.16Gbps V3链接串行器数据表

    电子发烧友网站提供《TSER953 4.16Gbps V3链接串行器数据表.pdf》资料免费下载
    发表于 07-02 09:25 9次下载
    TSER953 4.16Gbps <b class='flag-5'>V3</b>链接串行器数据表

    Arm新Arm Neoverse计算子系统(CSS):Arm Neoverse CSS V3和Arm Neoverse CSS N3

    Neoverse计算子系统(CSS)包括Arm Neoverse CSS V3和Arm Neoverse CSS N3。 Arm推出Neoverse CSS N3V3 Arm Ne
    的头像 发表于 04-24 17:53 1107次阅读
    Arm新Arm Neoverse计算子系统(CSS):Arm Neoverse CSS <b class='flag-5'>V3</b>和Arm Neoverse CSS N<b class='flag-5'>3</b>

    【产品单页】4G IoT开发套件V3

    【产品单页】4G IoT开发套件V3 产品单页见下方附件*附件:4G IoT开发套件V3--20240527.pdf
    发表于 03-16 14:13

    瑞萨Flash程序员V3 发布说明

    电子发烧友网站提供《瑞萨Flash程序员V3 发布说明.pdf》资料免费下载
    发表于 02-19 09:37 1次下载
    瑞萨Flash程序员<b class='flag-5'>V3</b> 发布说明