




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三讲文件操作,Matlab环境下的文件与其它系统一样,也有二类文件组成,一是文件,又称M文件,另一类是数据文件。系统除提供了文件的一般管理功能外,还提供了对数据文件进行操作的特殊功能函数。,3.1 基本命令,1. help 帮助命令 格式: help 命令名 例如: help plot help demos 2. what 显示目录内容命令 格式: what 目录名 例如: what demos 显示demos目录下的所有M(MAT)-文件。 路径 :C:Program FilesMATLAB71toolboxmatlabdemos,3.1 基本命令,3type 显示文件内容命令 格式: t
2、ype +文件名 显示M-文件的内容。 例如: type aaa(.m) 4 寻找命令 格式: lookfor 命令或字符串 寻找命令或字符串是否存在。 例如: lookfor cos,3.1 基本命令,5which 寻找函数命令 格式:which 函数名 显示函数所在的文件位置,给出路径。 例如: which pinv(.m) which aaa (.m) 6 path 路径控制命令 格式: path 路径 显示或改变搜索路径。 例如: path(path,d:test) %添加test文件夹路径 ,可在菜单中查看到。,3.1 基本命令,7who,whos 显示变量命令 显示当前变量。 wh
3、os命令更详细。 8 load,save 取出与保存结果命令 从磁盘上读出或保存计算结果。 例如: save test 将变量存入test.mat文件中。 例如: save test x y 仅保存x ,y 变量。 save test x y -ascii,通常,save命令加ascii选项后只将各变量的值不加区别的存储的存放到我们所指定的文件中,而并没有一个可供识别的文件头或变量分类信息,于是在重新用load载入的时候,只将文件中的值作为一个变量的值进行载入,而且是以文件名为变量名进行载入。,3.1 基本命令,9 clear 清除变量命令 格式: 变量名 例如: clear x y 10 d
4、isp 显示文本或变量内容命令 例如:x=1 2 3 disp(x) yy=aaa disp(y),3.1 基本命令,11 cd 改变目录命令 与DOS类似。 例:cd(C:Program FilesMATLAB71) 12 dir 显示目录内容命令 显示目录里的文件。 例如:dir(C:Program FilesMATLAB71),3.1 基本命令,13delete 删除文件或对象命令 格式: delete 文件名 不能用通配符 delete(对象) 例如:H=plot(X,X) delete (H) 删除图形对象H,但不是图形窗口,14. ginput函数 MATLAB里面用ginput函
5、数取n点 的坐标数据x,y。 格式 : x,y = ginput(n),例: x=0:10; y=2*x; plot(x,y) x,y = ginput(10),3.2 文件的打开与关闭,Matlab提供了对数据文件建立、打开、读、写以及关闭等一系列函数,数据文件一般存放在磁盘等介质上,用文件名标识,系统对文件名没有特殊要求。文件数据格式有二种形式,一是二进制格式文件,二是ASCII文本文件,系统对这两类文件提供了不同的读写功能函数。,3.2 文件的打开与关闭,1 fopen打开文件 在读写文件之前,必须先用fopen命令打开一个文件,并指定允许对该文件进行的操作。文件操作结束后,应及时关闭文
6、件,以免数据的丢失或误修改。fopen函数格式为: Fid= fopen(filename) Fid= fopen(filename,permission),返回值情况,3.2 文件的打开与关闭,其中filename为文件名,permission为文件格式,可以是下列格式之一: r 打开文件,读数据,文件必须存在。 w 打开文件,写数据,若文件不存在,系统会自动建立。 a 打开文件,在文件末尾添加数据。 r+ 打开文件,可以读和写数据,文件必须存在。 w+ 打开文件,供读与写数据用。 a+ 打开文件,供读与添加数据用。 W 打开文件供写数据用,无自动刷新功能。 A 打开文件供添加数据用,无自动
7、刷新功能。,3.2 文件的打开与关闭,例如:打开一个数据文件并进行读操作,其命令格式为: Fid=fopen( a.txt, r ) 上述打开格式为ASCII格式 Fid=fopen( b.dat, r ) 打开格式为二进制格式,3.2 文件的打开与关闭,2 fclose关闭文件 文件在进行完读、写等操作后,应及时关闭,以保证文件的安全可靠。关闭文件命令格式为: Sta=fclose(Fid) 关闭Fid所表示的文件 Sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回1。,3.3 文件的读写操作,fwrite 函数以二进制格式向数据文件写数据,其格式为: N=fwrite (Fid
8、, A, precision) 例如:Fid=fopen(a.txt, wb); fwrite(Fid, magic, float); 上述语句将矩阵magic中的数据写入文件a.txt中,数据格式为32位浮点型二进制格式。,1 二进制数据文件, A=1.1 2.2 3.3 4.4 5.5 6.6; Fid=fopen(a.txt, wb) fwrite(Fid,A,float) fclose(Fid),3.3 文件的读写操作,fread 读二进制数据文件。格式为: A = fread(fid) A = fread(fid, count) A = fread(fid, count, preci
9、sion) 其中A为数据矩阵,count返回所读取的数据元素个数。, fp=fopen(a.txt,r) B=fread(fp,1 4,float) %1行4列 fclose(fp),frewind(fid),2 4代表2行4列 B = 1.1000 3.3000 5.5000 2.2000 4.4000 6.6000,3.3 文件的读写操作,precision用于控制所读数据的精度格式。 缺省格式为uchar,即无符号字符格式。 help fread,3.3 文件的读写操作,【例】建立一数据文件test.dat,用于存放矩阵A的数据。 已知 A=-0.6515 -0.2727 -0.4354
10、 -0.3190 -0.9047 -0.7534 -0.4567 -0.3212 -0.4132 -0.3583 -0.9264 -0.8173 -0.7823 -0.3265 -0.0631 -0.1735 -0.7373 -0.0972 -0.3267 -0.6298 -0.4768 -0.6773 -0.6574 -0.1923 -0.4389,3.3 文件的读写操作,Fid=fopen(test.dat, w) cnt=fwrite(Fid, A, float) fclose(Fid) 程序段将矩阵A的数据以二进制浮点数格式写入文件test.dat中。 Fid=fopen(test.d
11、at, r) B,cnt=fread(Fid, 5,inf, float) fclose(Fid) 读取文件test.dat的内容。,returns the data read from the file in B, and the number of elements successfully read in cnt.,10,inf 2,3,inf : reads to the end of the file,3.3 文件的读写操作,2 文本文件,fprintf 写ASCII数据文件,其格式为: N= fprintf(Fid, format, A) 其中A为要写入文件的数据矩阵,先按form
12、at格式化数据矩阵A,后写入到Fid所指定的文件。 例如: x = 0: 0.1: 1; Fid = fopen(a.txt, w); N=fprintf(Fid, The number is: %gn,x); fclose(Fid);,fscanf 读ASCII文本文件 A = fscanf(fid, format) A,COUNT= fscanf (Fid, format, size) 其中A为数据矩阵,用以存放读取的数据,COUNT返回所读取的数据元素个数。 format用以控制读取的数据格式,由%加上格式符组成,格式符为: d, i, o, u, x, e, f, g, s, c与.
13、. . help fscanf,例如: Fid = fopen(a.txt, r) A=fscanf(Fid,%c),3.4 数据文件定位写操作,1.fseek函数定位文件位置指针,格式为: status=fseek(Fid, offset, origin) 其中Fid为文件句柄,offset表示位置指针相对移动的字节数,若为正整数表示向文件尾方向移动,若为负整数表示向文件头方向移动,origin表示位置指针移动的参照位置,它的取值有三种可能:cof 表示文件的当前位置,bof 表示文件的开始位置,eof 表示文件的结束位置。若定位成功status返回值为0,否则返回值为1。,fid = fo
14、pen(a.txt, r+) fseek(fid, 3, bof) %跳过3个字节 N=fprintf(Fid, The number is: %gn,22) fclose(Fid);,3.4 数据文件定位写操作,2. ftell函数返回文件指针的当前位置。 其格式为: position=ftell (Fid) 返回值为从文件开始到指针当前位置的字节数。若返回值为1表示获取文件当前位置失败。,前面返回的position=3,3.4 数据文件定位写操作,【例】下述程序段说明了函数fseek和ftell的使用。 a=1: 5; Fid=fopen(fdat.bin, w); 以写方式打开文件fdat.bin fwrite(Fid, a, int16 ); 将a中的5个数据元素分别以 双字节(16bit)整型格式写入 status=fclose(Fid); 文件fdat.bin Fid=fopen(fdat.bin, r); 以读数据方式打开文件,3.4 数据文件定位写操作,status=fseek(Fid, 6, bof); 将文件数据指针从开始位置向尾部移动6个字节 four=fread(Fid, 1, int16); 读取当前数据,即第4个数据,并移动指针到下一个数据 position=ftell(Fid); eight=fread(Fid,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 人力资本驱动经济增长的多维度剖析与实证研究
- APOBEC3B基因在乙肝相关性肝癌中的功能剖析:从分子机制到临床应用的探索
- 单分子晶体生长-洞察及研究
- 睡眠对运动恢复影响-洞察及研究
- 物种相互作用研究-洞察及研究
- 【《基于STM32F103RCT6单片机的仓储环境智能监测小车系统设计》18000字(论文)】
- 2025年新版药品管理法试题及答案
- 2025年新版保密法知识考试试题库及答案解析
- 新建生产精密模具、洗地机器人注塑件、电子配件组装件、汽车零配件项目环境影响评价报告表
- 危机管理决策框架考核试卷
- 《家族企业人力资源管理探究-以某集团为例》15000字【论文】
- 化工工程设计中的重点难点及解决方案
- 社会责任组织架构及职责
- 青光眼围手术期的护理
- 2024-2025学年数学北师大版七年级上册第1-3章阶段检测卷(含详解)
- 矿山建设项目应急预案及防控措施
- 工厂组织架构图
- GB/T 18385-2024纯电动汽车动力性能试验方法
- 2024年安徽中考英语词汇表
- 《大学物理学》课程教学大纲(64学时)
- 汽车美容店租赁协议范本
评论
0/150
提交评论