MATLAB程序设计教程(4)——MATLAB文件操作


4  MATLAB文件操作
4.1
文件的打开与关闭
4.2 
文件的读写操作
4.3 
数据文件定位

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

文件数据格式有两种形式,一是二进制文件,二是文本文件。在打开文件时需要进一步指定文件格式类型,即指定是二进制文件还是文本文件。

4.1.2 文件的关闭
文件在进行完读、写等操作后,应及时关闭。关闭文件用fclose函数,调用格式为:
sta=fclose(fid)
该函数关闭fid所表示的文件。sta表示关闭文件操作的返回代码,若关闭成功,返回0,否则返回–1

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


(1) N
表示读取 N个元素到一个列向量。
(2) Inf
表示读取整个文件。
(3) [M,N]
表示读数据到M×N的矩阵中,数据按列存放。
precision
代表读写数据的类型

2.写二进制文件
fwrite
函数按照指定的数据类型将矩阵中的元素写入到文件中。其调用格式为:
COUNT=fwrite (fid, A, precision)
其中COUNT返回所写的数据元素个数,fid为文件句柄,A用来存放写入文件的数据,precision用于控制所写数据的类型,其形式与fread函数相同。

4-1  建立一数据文件magic5.dat,用于存放5阶魔方阵。
程序如下:
fid=fopen(‘magic5.dat’,‘w’);
cnt=fwrite(fid,magic(5),‘int32’);
fclose(fid);

4.2.2  文本文件的读写操作
1
.读文本文件
fscanf
函数的调用格式为:
[A,COUNT]= fscanf (fid, format, size)
其中A用以存放读取的数据,COUNT返回所读取的数据元素个数。fid为文件句柄。format用以控制读取的数据格式,由%加上格式符组成,常见的格式符有dfcs
size
为可选项,决定矩阵A中数据的排列形式。

2.写文本文件
fprintf
函数的调用格式为:
COUNT= fprintf(fid, format, A)
其中A存放要写入文件的数据。先按format指定的格式将数据矩阵A格式化,然后写入到fid所指定的文件。格式符与fscanf函数相同。

4.3  数据文件定位
MATLAB
提供了与文件定位操作有关的函数fseekftellfseek函数用于定位文件位置指针,其调用格式为:
status=fseek(fid, offset, origin)
其中fid为文件句柄,offset表示位置指针相对移动的字节数,origin表示位置指针移动的参照位置。若定位成功,status返回值为0,否则返回值为–1

ftell函数返回文件指针的当前位置,其调用格式为:
position=ftell (fid)
返回值为从文件开始到指针当前位置的字节数。若返回值为–1表示获取文件当前位置失败。

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值