计算方法课件:2-5文件操作

上传人:M****1 文档编号:569556185 上传时间:2024-07-30 格式:PPT 页数:23 大小:255KB
返回 下载 相关 举报
计算方法课件:2-5文件操作_第1页
第1页 / 共23页
计算方法课件:2-5文件操作_第2页
第2页 / 共23页
计算方法课件:2-5文件操作_第3页
第3页 / 共23页
计算方法课件:2-5文件操作_第4页
第4页 / 共23页
计算方法课件:2-5文件操作_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《计算方法课件:2-5文件操作》由会员分享,可在线阅读,更多相关《计算方法课件:2-5文件操作(23页珍藏版)》请在金锄头文库上搜索。

1、2.5 MATLAB文件操作文件操作2.5.1文件定义文件定义2.5.2工作空间操作工作空间操作2.5.3文件打开与关闭文件打开与关闭2.5.4二进制文件的读写二进制文件的读写2.5.5文本文件的读写文本文件的读写2.5.6数据文件定位数据文件定位如 整数100000010011100010000内存存储形式0010011100010000二进制存储形式0011000100110000001100000011000000110000ASCII存储形式二进制文件特点:存储量小、速度快、便于存放中间结果文本文件特点:存储量大、速度慢、便于对字符操作2.5.2工作空间的存储读取工作空间的存储:工作空

2、间的存储:savesave(filename)save(filename, variables)save(filename, -struct, structName, fieldNames)save(filename, ., -append)save(filename, ., format)save(filename, ., version)save filename .save test.matclearload test.matsavefile = pqfile.mat;p = rand(1, 10);q = ones(10);save(pqfile.mat, p, q)工作空间数据的载入

3、:工作空间数据的载入:loadS = load(filename)S = load(filename, variables)S = load(filename, -mat, variables)S = load(filename, -ascii)load(filename, .)load filename .load gong.matload(handel.mat, y)demoFile = durer.mat;% Load selected variables.vars = X, caption;load(demoFile, vars:);2.5.3 文件的打开与关闭文件的打开与关闭2.5.

4、3.1 文件的打开文件的打开fopen函数的调用格式为:函数的调用格式为:fid= fopen(文件名,打开方式文件名,打开方式)其中文件名用字符串形式,表示待打开的数据其中文件名用字符串形式,表示待打开的数据文件。常见的打开方式有:文件。常见的打开方式有:r表示对打开表示对打开的文件读数据,的文件读数据,w表示对打开的文件写数表示对打开的文件写数据,据,a表示在打开的文件末尾添加数据。表示在打开的文件末尾添加数据。fid用于存储文件句柄值,句柄值用来标识该数用于存储文件句柄值,句柄值用来标识该数据文件,其他函数可以利用它对该数据文件进据文件,其他函数可以利用它对该数据文件进行操作。行操作。文

5、件数据格式有两种形式,一是二进制文件,二文件数据格式有两种形式,一是二进制文件,二是文本文件。在打开文件时需要进一步指定文是文本文件。在打开文件时需要进一步指定文件格式类型,即指定是二进制文件还是文本文件格式类型,即指定是二进制文件还是文本文件。件。2.5.3.2 文件的关闭文件的关闭文件在进行完读、写等操作后,应及时关闭。文件在进行完读、写等操作后,应及时关闭。关闭文件用关闭文件用fclose函数,调用格式为:函数,调用格式为:sta=fclose(fid)该函数关闭该函数关闭fid所表示的文件。所表示的文件。sta表示关闭文表示关闭文件操作的返回代码,若关闭成功,返回件操作的返回代码,若关

6、闭成功,返回0,否,否则返回则返回1。 2.5.4 二进制文件的读写操作二进制文件的读写操作1读二进制文件读二进制文件fread 函数可以读取二进制文件的数据,并将函数可以读取二进制文件的数据,并将数据存入矩阵。其调用格式为:数据存入矩阵。其调用格式为:A,COUNT=fread(fid,size, precision)其中其中A用于存放读取的数据,用于存放读取的数据,COUNT返回所读返回所读取的数据元素个数,取的数据元素个数,fid为文件句柄,为文件句柄,size为可为可选项,若不选用则读取整个文件内容,若选用选项,若不选用则读取整个文件内容,若选用则它的值可以是下列值:则它的值可以是下列

7、值:(1) N表示读取表示读取 N个元素到一个列向量。个元素到一个列向量。(2) Inf表示读取整个文件。表示读取整个文件。(3) M,N表示读数据到表示读数据到MN的矩阵中,数据按的矩阵中,数据按列存放。列存放。precision代表读写数据的类型代表读写数据的类型2写二进制文件写二进制文件fwrite 函数按照指定的数据类型将矩阵中的元函数按照指定的数据类型将矩阵中的元素写入到文件中。其调用格式为:素写入到文件中。其调用格式为:COUNT=fwrite (fid, A, precision)其中其中COUNT返回所写的数据元素个数,返回所写的数据元素个数,fid为为文件句柄,文件句柄,A用

8、来存放写入文件的数据,用来存放写入文件的数据,precision用于控制所写数据的类型,其形式与用于控制所写数据的类型,其形式与fread函数相同。函数相同。例建立一数据文件例建立一数据文件magic5.dat,用于存放,用于存放5阶魔阶魔方阵。方阵。程序如下:程序如下:fid=fopen(magic5.dat,w);cnt=fwrite(fid,magic(5),int32);fclose(fid); 2.5.5文本文件的读写操作文本文件的读写操作1读文本文件读文本文件fscanf 函数的调用格式为:函数的调用格式为:A,COUNT= fscanf (fid, format, size)其中

9、其中A用以存放读取的数据,用以存放读取的数据,COUNT返回所读返回所读取的数据元素个数。取的数据元素个数。fid为文件句柄。为文件句柄。format用用以控制读取的数据格式,由以控制读取的数据格式,由%加上格式符组成,加上格式符组成,常见的格式符有常见的格式符有d,f,c,s。size为可选项,决定矩阵为可选项,决定矩阵A中数据的排列形式。中数据的排列形式。2写文本文件写文本文件fprintf 函数的调用格式为:函数的调用格式为:COUNT= fprintf(fid, format, A)其中其中A存放要写入文件的数据。先按存放要写入文件的数据。先按format指指定的格式将数据矩阵定的格式

10、将数据矩阵A格式化,然后写入到格式化,然后写入到fid所指定的文件。格式符与所指定的文件。格式符与fscanf函数相同。函数相同。文本文件读写操作文本文件读写操作x = 0:.1:1;y = x; exp(x);fid = fopen(exp.txt, w);fprintf(fid, %6.2f %12.8fn, y);fclose(fid);fid = fopen(exp.txt);A = fscanf(fid, %g %g, 2 inf);fclose(fid);A = A; 2.5.6 数据文件定位数据文件定位MATLAB提供了与文件定位操作有关的函提供了与文件定位操作有关的函数数fse

11、ek和和ftell。fseek函数用于定位文件位置函数用于定位文件位置指针,其调用格式为:指针,其调用格式为:status=fseek(fid, offset, origin)其中其中fid为文件句柄,为文件句柄,offset表示位置指针相表示位置指针相对移动的字节数,对移动的字节数,origin表示位置指针移动表示位置指针移动的参照位置。若定位成功,的参照位置。若定位成功,status返回值为返回值为0,否则返回值为,否则返回值为1。ftell函数返回文件指针的当前位置,其调函数返回文件指针的当前位置,其调用格式为:用格式为:position=ftell (fid)返回值为从文件开始到指针当前位置的返回值为从文件开始到指针当前位置的字节数。若返回值为字节数。若返回值为1表示获取文件当表示获取文件当前位置失败。前位置失败。a=5.6;b=randn(3,5);fid = fopen(test.data, w);fwrite(fid, a,double);fwrite(fid, b,double);fclose(fid);fid = fopen(test.data);ma = fread(fid, 1, double);mb = fread(fid, 3 5, double);fclose(fid);

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号