




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,第三讲文件操作,.,2,Matlab环境下的文件与其它系统一样,也有二类文件组成,一是文件,又称M文件,另一类是数据文件。系统除提供了文件的一般管理功能外,还提供了对数据文件进行操作的特殊功能函数。,.,3,3.1基本命令,1.help帮助命令格式:help命令名例如:helpplothelpmatlabgeneral2.what显示目录内容命令格式:what目录名例如:whatmatlab显示matlab目录下的所有M-文件。,.,4,3.1基本命令,3type显示文件内容命令格式:type文件名显示M-文件的内容。4寻找命令格式:lookfor命令或字符串寻找命令或字符串是否存在。例如:lookforcos,.,5,3.1基本命令,5which寻找函数命令格式:which函数名显示函数所在的文件位置,给出路径。例如:whichpinv6path路径控制命令格式:path路径显示或改变搜索路径。例如:path(path,d:testaaa),.,6,3.1基本命令,7who,whos显示变量命令显示当前变量。whos命令更详细。8load,save取出与保存结果命令从磁盘上读出或保存计算结果。例如:savetest将变量存入test.mat文件中。例如:savetestxy仅保存x,y变量。,.,7,3.1基本命令,9clear清除变量命令格式:变量名例如:clearxy10disp显示文本或变量内容命令例如:x=123disp(x)y=aaaaaaadisp(y),.,8,3.1基本命令,11cd改变目录命令与DOS类似。12dir显示目录内容命令显示目录里的文件。例如:dirmatlabnotebook,.,9,3.1基本命令,13delete删除文件或对象命令格式:delete文件名不能用通配符delete(对象)例如:H=PLOT(X,X)delete(H)删除图形对象H,.,10,3.1基本命令,14!执行系统命令在Windows下运行。“!”用于执行DOS命令。例如:!dir*.exe显示当前目录里的EXE文件。,.,11,3.2文件的打开与关闭,Matlab提供了对数据文件建立、打开、读、写以及关闭等一系列函数,数据文件一般存放在磁盘等介质上,用文件名标识,系统对文件名没有特殊要求。文件数据格式有二种形式,一是二进制格式文件,二是ASCII文本文件,系统对这两类文件提供了不同的读写功能函数。,.,12,3.2文件的打开与关闭,1fopen打开文件在读写文件之前,必须先用fopen命令打开一个文件,并指定允许对该文件进行的操作。文件操作结束后,应及时关闭文件,以免数据的丢失或误修改。fopen函数格式为:Fid=fopen(filename,permission),.,13,3.2文件的打开与关闭,其中filename为文件名,permission为文件格式,可以是下列格式之一:r打开文件,读数据,文件必须存在。w打开文件,写数据,若文件不存在,系统会自动建立。a打开文件,在文件末尾添加数据。r+打开文件,可以读和写数据,文件必须存在。w+打开文件,供读与写数据用。a+打开文件,供读与添加数据用。W打开文件供写数据用,无自动刷新功能。A打开文件供添加数据用,无自动刷新功能。,.,14,3.2文件的打开与关闭,例如:打开一个名为std.dat的数据文件并进行读操作,其命令格式为:Fid=fopen(std.dat,r)上述打开格式均为二进制格式,如果想用ASCII文本格式,则必须在格式字符串中加上字符t,例如用rt表示以ASCII格式打开供读操作的数据文件。,.,15,3.2文件的打开与关闭,2fclose关闭文件文件在进行完读、写等操作后,应及时关闭,以保证文件的安全可靠。关闭文件命令格式为:Sta=fclose(Fid)关闭Fid所表示的文件Sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回1。,.,16,3.3文件的读写操作,1二进制数据文件fread读二进制数据文件。格式为:A,COUNT=fread(Fid,size,precision)其中A为数据矩阵,COUNT返回所读取的数据元素个数。size为可选项,若不选用则读取整个文件内容,若选用它的值可以是下列值:,.,17,3.3文件的读写操作,N读取N个元素到一个列向量。inf读取整个文件。M,N读数据到MN的矩阵中,数据按列存放。,.,18,3.3文件的读写操作,precision用于控制所读数据的精度格式。缺省格式为uchar,即无符号字符格式。例如:Fid=fopen(std.dat,r);A=fread(Fid,100,long);Sta=fclose(fid);以读数据方式打开数据文件std.dat,并按长整型数据格式读取文件的前100个数据放入向量A,然后关闭文件。,.,19,3.3文件的读写操作,fwrite函数以二进制格式向数据文件写数据,其格式为:COUNT=fwrite(Fid,A,precision)例如:Fid=fopen(magic5.bin,wb);fwrite(Fid,magic,int32);上述语句将矩阵magic中的数据写入文件magic5.bin中,数据格式为32位整型二进制格式。,.,20,3.3文件的读写操作,【例1】建立一数据文件test.dat,用于存放矩阵A的数据。已知A=-0.6515-0.2727-0.4354-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,.,21,3.3文件的读写操作,Fid=fopen(test.dat,w)cnt=fwrite(Fid,A,float)fclose(Fid)程序段将矩阵A的数据以二进制浮点数格式写入文件test.dat中。Fid=fopen(test.dat,r)B,cnt=fread(Fid,5,inf,float)fclose(Fid)读取文件test.dat的内容。,.,22,3.3文件的读写操作,2文本文件fscanf读ASCII文本文件A,COUNT=fscanf(Fid,format,size)其中A为数据矩阵,用以存放读取的数据,COUNT返回所读取的数据元素个数。format用以控制读取的数据格式,由%加上格式符组成,格式符为:d,i,o,u,x,e,f,g,s,c与.,.,23,3.3文件的读写操作,例如:s=fscanf(fid,%s)读取一个字符串a=fscanf(fid,%5d)读取5位数的整数b=fscanf(fid,%6.2d)读取浮点数,.,24,3.3文件的读写操作,fprintf写ASCII数据文件,其格式为:COUNT=fprintf(Fid,format,A,)其中A为要写入文件的数据矩阵,先按format格式化数据矩阵A,后写入到Fid所指定的文件。例如:x=0:0.1:1;y=x;exp(x);Fid=fopen(exp.txt,w);fprintf(Fid,%6.2f%12.8fn,y);fclose(Fid);,.,25,3.4数据文件定位写操作,1.fseek函数定位文件位置指针,格式为:status=fseek(Fid,offset,origin)其中Fid为文件句柄,offset表示位置指针相对移动的字节数,若为正整数表示向文件尾方向移动,若为负整数表示向文件头方向移动,origin表示位置指针移动的参照位置,它的取值有三种可能:cof表示文件的当前位置,bof表示文件的开始位置,eof表示文件的结束位置。若定位成功status返回值为0,否则返回值为1。,.,26,3.4数据文件定位写操作,2.ftell函数返回文件指针的当前位置。其格式为:position=ftell(Fid)返回值为从文件开始到指针当前位置的字节数。若返回值为1表示获取文件当前位置失败。,.,27,3.4数据文件定位写操作,【例2】下述程序段说明了函数fseek和ftell的使用。a=1:5;Fid=fopen(fdat.bin,w);以写方式打开文件fdat.binfwrite(Fid,a,int16);将a中的5个数据元素分别以双字节整型格式写入status=fclose(Fid);文件fdat.binFid=fopen(fdat.bin,r);以读数据方式打开文件,.,28,3.4数据文件定位写操作,status=fseek(Fid,6,bof);将文件数据指针从开始位置向尾部移动6个字节four=fread(Fid,1,int16);读取当前数据,即第4个数据,并移动指针到下一个数据position=ftell(Fid);eight=fread(Fid,1,int16);读取第8个数据status=fclose(F
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2030中国区域啤酒品牌差异化竞争策略及市场下沉机会挖掘报告
- 2025至2030保险中介行业项目调研及市场前景预测评估报告
- 新成立的公司向个人借款合同7篇
- 2025年4月广东深圳市光明区教育局招聘公办幼儿园人员模拟试卷及答案详解(新)
- 2025年智能制造的工业制造技术发展
- 2025江苏淮安市洪泽区云创传媒有限公司总经理招聘模拟试卷及1套完整答案详解
- 2025年智能客服的满意度提升策略
- 2025年合肥滨湖时光文化旅游投资有限公司招聘3人考前自测高频考点模拟试题及答案详解1套
- 2025年海洋能发电技术标准制定与实施报告
- 2025内蒙古恒正实业集团有限公司招聘10名工作人员模拟试卷附答案详解(突破训练)
- 乡村旅游环境卫生培训
- 六级英语试题库电子版及答案
- 2025年工程机械行业发展研究报告
- (二模)2025年5月济南市高三高考针对性训练英语试卷(含答案解析)
- 中国当代知名作家鲁迅生平介绍课件
- 《资治通鉴》与为将之道知到课后答案智慧树章节测试答案2025年春武警指挥学院
- 智慧燃气解决方案
- 抖音来客本地生活服务丽人美容美体商家短视频拍摄创作运营方案
- 《妊娠期合并心脏病》课件
- 政府采购投标及履约承诺函(最终五篇)
- 销售工作三年规划
评论
0/150
提交评论