数学软件MATLAB.ppt

上传人:wuy****n92 文档编号:88342609 上传时间:2023-04-25 格式:PPT 页数:20 大小:204KB
返回 下载 相关 举报
数学软件MATLAB.ppt_第1页
第1页 / 共20页
数学软件MATLAB.ppt_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《数学软件MATLAB.ppt》由会员分享,可在线阅读,更多相关《数学软件MATLAB.ppt(20页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、数学实验Matlab 文件操作q 文文件件操操作作是是一一种种重重要要的的输输入入输输出出方方式式,Matlab 提提供了一系列输入输出函数,专门用于文件操作。供了一系列输入输出函数,专门用于文件操作。q Matlab文文件件操操作作主主要要有有三三个个步步骤骤:首首先先打打开开文文件,然后对文件进行件,然后对文件进行读写读写操作,最后要操作,最后要关闭关闭文件。文件。q Matlab中中的的输输入入输输出出函函数数是是以以 C语语言言标标准准库库函函数数中中的的输输入入输输出出函函数数为为基基础础开开发发的的,所所以以这这些些函函数数与与 C语言的输入输出函数相类似。语言的输入输出函数相类似

2、。Matlab 文件操作介绍文件操作介绍l 常见的打开方式有:常见的打开方式有:fid=fopen(文件名,打开方式文件名,打开方式)r只读,文件必须存在(缺省的打开方式)只读,文件必须存在(缺省的打开方式)w写文件,若文件已存在则原内容将被覆盖;若文写文件,若文件已存在则原内容将被覆盖;若文件不存在则新建一个件不存在则新建一个a在文件末尾添加,文件若不存在则新建一个在文件末尾添加,文件若不存在则新建一个r+可读可写,文件必须存在可读可写,文件必须存在w+可读可写,若文件已存在则原内容将被覆盖;若可读可写,若文件已存在则原内容将被覆盖;若文件不存在则新建一个文件不存在则新建一个a+可读可写可添

3、加,文件若不存在则新建一个可读可写可添加,文件若不存在则新建一个文件的打开文件的打开l 其中文件名用字符串形式表示(可以带路径名)其中文件名用字符串形式表示(可以带路径名)l fid 为文件句柄,其它函数可以用它对该文件进行操为文件句柄,其它函数可以用它对该文件进行操作。如果句柄值大于作。如果句柄值大于 0,则表示文件打开成功;若打开,则表示文件打开成功;若打开失败,失败,fid 的返回值为的返回值为-1。l 有两个标准代码文件,不需打开就可以直接使用,分有两个标准代码文件,不需打开就可以直接使用,分别为:别为:fid=1 标准输出文件,标准输出文件,fid=2 标准错误文件。标准错误文件。文

4、件的打开文件的打开fid=fopen(output.txt,wt+);fprintf(fid,Hello world!n);fclose(fid);fprintf(1,Hello world!n);fprintf(2,Hello world!n);l 文件有两种格式:文件有两种格式:二进制二进制文件文件(b)和和文本文本文件文件(t)。在在Windows下,打开文件的默认是二进制格式,如果下,打开文件的默认是二进制格式,如果要以文本方式打开,则必须在打方式中加上字符要以文本方式打开,则必须在打方式中加上字符 t。l 若不指定打开方式,则表示只读。若不指定打开方式,则表示只读。文件的打开文件的打

5、开fid=fopen(output.txt,wt+);l 其中其中 fid 为所要关闭的文件的句柄,为所要关闭的文件的句柄,status 为关为关闭文件的返回代码,若关闭成功则为闭文件的返回代码,若关闭成功则为 0,否则为,否则为-1。status=fclose(fid);文件的关闭文件的关闭l A 用来存放读取的数据用来存放读取的数据l count 返回读取数据的个数,为可选项返回读取数据的个数,为可选项l fid 为文件句柄为文件句柄l size 为可选项,缺省为读取整个文件,为可选项,缺省为读取整个文件,若给出,则取值可以是:若给出,则取值可以是:A,count=fscanf(fid,f

6、ormat,size)文本文件的读取文本文件的读取N读取读取 N 个数据到一个列向量个数据到一个列向量Inf读取整个文件读取整个文件m,n读取读取 m n 个数据到一个个数据到一个 m n 矩阵中,按列矩阵中,按列存放存放c字符型字符型g浮点数(自动)浮点数(自动)d十进制整数十进制整数o八进制八进制e浮点数(科学计数法)浮点数(科学计数法)s字符串字符串f浮点数(小数形式)浮点数(小数形式)x十六进制十六进制文本文件的读取文本文件的读取l format 用来控制读取的数据格式,由用来控制读取的数据格式,由%加上加上格式符组成,下表中是常见的格式符,在格式符组成,下表中是常见的格式符,在%之后

7、之后可以加上数据宽度,如可以加上数据宽度,如%12du 将将输出变量输出变量按指定的格式写入文件中按指定的格式写入文件中u 若省略若省略 fid,则表示在屏幕上输出则表示在屏幕上输出u count 返回所写入的数据元素个数(可省)返回所写入的数据元素个数(可省)u format 以以%开头,通常由以下几个部分组成:开头,通常由以下几个部分组成:count=fprintf(fid,format,输出变量列表输出变量列表)n flags(optional)n Width and precision fields(optional)n Conversion character(required)文本

8、文件的写入文本文件的写入fprintf 举例举例fprintf(a=%-12.5f n,123.456)format以以%开头开头flagfield widthprecision格式说明符格式说明符-:左对齐左对齐+:输出符号输出符号0 :空白处添空白处添 0空格空格:前面加一空格前面加一空格字段宽度字段宽度小数点后小数点后输出位数输出位数文本文件的写入文本文件的写入l fprintf 命令的格式说明符命令的格式说明符c字符型字符型g浮点数(自动)浮点数(自动)d十进制整数十进制整数o八进制八进制e浮点数(科学计数法)浮点数(科学计数法)s字符串字符串f浮点数(小数形式)浮点数(小数形式)x/

9、X十六进制十六进制l format 中还可以使用的特殊字符中还可以使用的特殊字符b退后一格退后一格t水平制表符水平制表符f换页换页反斜杠反斜杠n换行换行单引号单引号r回车回车%百分号百分号x=0:0.1:1;y=x;exp(x);fid=fopen(output.dat,wt);fprintf(fid,x exp(x)n);fprintf(fid,%6.2f%12.8fn,y);status=fclose(fid);例:例:文本文件的写入举例文本文件的写入举例A,count=fread(fid,size,precision)N读取读取 N 个数据到一个列向量个数据到一个列向量Inf读取整个文件

10、读取整个文件m,n读取读取 m n 个数据到一个个数据到一个 m n 矩阵中,按列矩阵中,按列存放存放二进制文件的读写二进制文件的读写l A 用来存放读取的数据用来存放读取的数据l count 返回读取数据的个数,可选项返回读取数据的个数,可选项l fid 为文件句柄为文件句柄l size 为可选项,缺省为读取整个文件,为可选项,缺省为读取整个文件,若给出,则取值可以是:若给出,则取值可以是:u precision 代表代表读取读取的数据的类型,的数据的类型,缺省为缺省为 ucharuchar无符号字符无符号字符uint1616位无符号整数位无符号整数schar带符号字符带符号字符uint32

11、32位无符号整数位无符号整数int88位带符号整数位带符号整数uint6464位无符号整数位无符号整数int16 16位带符号整数位带符号整数float3232位浮点数位浮点数int32 32位带符号整数位带符号整数float6464位浮点数位浮点数int64 64位带符号整数位带符号整数double64位双精度数位双精度数uint8 8位无符号整数位无符号整数二进制文件的读取二进制文件的读取char带符号字符带符号字符short16位带符号整数位带符号整数int32位带符号整数位带符号整数long32或或64位带符号整数位带符号整数ushort 16位无符号整数位无符号整数uint32位无符

12、号整数位无符号整数ulong32或或64位无符号整数位无符号整数float32位浮点数位浮点数u 以下数据类型与使用的平台有关:以下数据类型与使用的平台有关:二进制文件的读取二进制文件的读取fid=fopen(output.dat,r);A=fread(fid,100,double);status=fclose(fid);fid=fopen(output.dat,r);A,count=fread(fid,100,100,double);status=fclose(fid);例:例:二进制文件读写举例二进制文件读写举例u 按按指指定定的的数数据据类类型型将将矩矩阵阵 A 中中的的元元素素写写入入

13、到到文文件件中中。其中其中 count 返回所写入的数据元素个数(可省)。返回所写入的数据元素个数(可省)。count=fwrite(fid,A,precision)A=magic(5);fid=fopen(magic5.dat,w);fwrite(fid,A,int8);fclose(fid);fid=fopen(magic5.dat,r);B,count=fread(fid,5,inf,int8);fclose(fid);二进制文件的写入二进制文件的写入例:例:q 打打开开文文件件读读写写数数据据时时,需需要要判判断断和和控控制制文文件件的的读读写写位位置置,如如数数据据是是否否读读完完,

14、或或者者需需要要读读写写指指定定位置上的数据等。位置上的数据等。q 在在读读写写文文件件时时,Matlab 自自动动创创建建一一个个文文件件位位置置指针来管理和维护文件读写数据的起始位置。指针来管理和维护文件读写数据的起始位置。q Matlab 提供了几个文件位置指针定位操作函数:提供了几个文件位置指针定位操作函数:fseek、ftell、frewind 和和 feof读写的定位读写的定位status=fseek(fid,offset,origin)u fid 为文件句柄为文件句柄u offset 表表示示位位置置指指针针相相对对偏偏移移的的字字节节数数,若若为为正正表表示示向文件尾方偏移,若

15、为负表示向文件头方向偏移向文件尾方偏移,若为负表示向文件头方向偏移fseekn cof 表示当前位置,表示当前位置,n bof 表示文件的开始位置,表示文件的开始位置,n eof 表示文件末尾;表示文件末尾;u 若定位成功,若定位成功,status 返回值为返回值为 0,否则返回,否则返回-1u origin 表示位置指针移动的参照位置,有三种取值:表示位置指针移动的参照位置,有三种取值:frewind(fid)eofstat=ftell(fid)l 判判断断文文件件位位置置指指针针是是否否达达到到文文件件结结束束位位置置,若若文文件件位位置指针已在文件末尾,则返回置指针已在文件末尾,则返回 1,否则返回,否则返回 0position=ftell(fid)l 返回值为从文件开始到指针当前位置的字节数返回值为从文件开始到指针当前位置的字节数l 将位置指针返回到文件的起始位置将位置指针返回到文件的起始位置ftell、frewind 和和 feof

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com