- 1、本文档共25页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 文件操作 掌握MATLAB文件处理方法 主要内容 4.1文件的类型 4.2 文件的操作 4.1文件 文件可分为两类: 文本文件 由字符和与字符的显示格式有关的控制符构成 常见扩展名:“TXT” 、“BAT”、“HTM” 二进制文件 二进制文件为非文本文件 常见扩展名:“COM”、“EXE” 、“BMP” 、“WAV” MATLAB中基本的文件I/O指令: 1.打开和关闭文件 fopen、fclose 2.格式读写 fprintf、fscanf、fgetl、fgets 3.非格式读写 fread、fwrite 4.文件定位和状态 feof、fseek、ftell、ferror、frewind 4.1.1文件的打开与关闭 1.fopen函数 功能:打开文件或获得打开文件信息。 格式一: fid=fopen(文件名,’允许模式’) fid=fopen(filename,permission) 以’允许模式’指定的模式打开“文件名”所指定的文件,返回文件标识fid; ‘允许模式’ 可以是下列几个字符串之一: ‘r’ : 打开文件进行读(缺省型式); ‘w’ : 删除己存在文件中的内容或生成一个新文件,打开进行写操作; ‘a’ :打开一个己存在的文件或生成并打开一个新文件,进行写操作,在文件末尾添加数据; 格式二: [fid , message]=fopen (文件名,’允许模式’,格式) 功能:用指定的数据“格式”打开数据文件,返回文件标识和打开文件信息两个参数。 “数据格式”。 例4-1 计算当x=[0 1]时f(x)=exp的值,并将结果写入到文件my.txt中。 程序 x=0:0.1:1; y=[x;exp(x)];%y有两行数据 fid=fopen(E:\my.txt,w); fprintf(fid,%6.2f %12.8f\n,y);%把y数据写入到fid fclose(fid); 例4-2 从上例中生成的文件my.txt中读取数据,并将结果输出到屏幕。 程序 fid = fopen(E:\my.txt,r); [a,count] = fscanf(fid,%f %f,[2 inf]); fprintf(1,%f %f\n,a); fclose(fid); 输出 同例4-1文件中的数据格式。 4.1.3 文件定位和文件状态 1.feof函数:检测文件是否已经结束 status=feof(fid) 2.ferror函数:用于查询文件的输入、输出错误信息 msg=ferror(fid) 3.frewind函数:使位置指针重新返回文件的开头 frewind(fid) 4.fseek函数:设置文件的位置指针 status=fseek(fid, offset, origin) 5.ftell函数:用于查询当前文件指针的位置 position=ftell(fid); 例4-3 输出文件的大小。 程序 fid=fopen(E:\my.txt,r); fseek(fid,0,eof); x=ftell(fid); fprintf(1,File Size=%d\n,x); frewind(fid); x=ftell(fid); fprintf(1,File Position =%d\n,x); fclose(fid); 4.1.4按行读取数据 1.fgetl函数:按行从文件中读取数据,但不读取换行符。 line=fgetl(fid) 2.fgets函数:用于从文件中读取行、保留换行符并把行作为字符串返回。 (1)line=fgets(fid) (2)line=fgets(fid,nchar) 例-4 编写一个程序,用于读取例4-1生成的数据。 程序 fid=fopen(E:\my.txt,r); while ~feof(fid)%在文件没有结束时按行读取数据 s=fgets(fid); fprintf(1,%s,s); end fclose(fid); 输出 同例4-1文件中的数据格式。 4.1.5二进制数据文件的读写 fwrite函数:用于向一个文件写入二进制数据 count=fwrite(fid, A, precision)。 fread函数:用于从文件中读二进制数据 [A,count]=fread(fid, size, precision) 注意:使用函数fread()和fwrite()读写文件时,必须以二进制方式打开文件 例4-5 将5行5列“魔方阵”存入二进制文件中。 程序 fid=fopen(E:\my1.dat,w); a=magic(5); fwrite(fi
您可能关注的文档
- 第3章_平面连杆机构的运动分析l0a精要.ppt
- 第3章_信息系统分析与设计_用例及用例图精要.ppt
- 第3章+注册会计师执业准则精要.ppt
- 第3章氨基酸代谢精要.ppt
- 第3章变压器精要.ppt
- 第3章第4节 免疫调节精要.ppt
- 第3章-锻压工艺基础知识精要.ppt
- 第3章工程计价方法精要.ppt
- 第3章购货与付款循环审计精要.ppt
- 第3章会计核算基础精要.ppt
- 2024年江西省高考政治试卷真题(含答案逐题解析).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)物理试卷(含答案详解).pdf
- 2025年四川省新高考八省适应性联考模拟演练(二)地理试卷(含答案详解).pdf
- 2024年内蒙通辽市中考化学试卷(含答案逐题解析).docx
- 2024年四川省攀枝花市中考化学试卷真题(含答案详解).docx
- (一模)长春市2025届高三质量监测(一)化学试卷(含答案).pdf
- 2024年安徽省高考政治试卷(含答案逐题解析).pdf
- (一模)长春市2025届高三质量监测(一)生物试卷(含答案).pdf
- 2024年湖南省高考政治试卷真题(含答案逐题解析).docx
- 2024年安徽省高考政治试卷(含答案逐题解析).docx
文档评论(0)