matlab文件操作

原创 2016年08月31日 11:59:06
//////////////////////////////文件输入输出////////////////////////////////////////////
MATLAB 系统具有直接对磁盘文件进行访问的功能,用户不仅可进行高层的程序设计, 必要时还可进行低层次磁盘文件的读写操作,增强了 MATLAB 程序设计的灵活性。 MATLAB 内建有很多有关文件输入和输出的函数,使用者可以很方便地对二进制文件或 ASCII 文件进行打开、关闭和存储等操作。这些函数是基于 C 语言的文件 I/O 函数的,简单 易学



在 MATLAB 中,使用 C 语言中的同名函数 fopen 来完成这一功能,其语法为: fid=fopen(’filename’,’permission’)
如 果要知道 fopen 操作失败的原因,可以使用下列方式调用:
[fid,message]=fopen(’filename’,’r’)

如果是打开一个存在的文件,示例代码设置如下:
[fid,message]=fopen(’sum2.m’,’r’);
if fid==-1
    disp(message);
end

关闭文件
在进行完读写操作后,必须关闭文件,以免打开文件过多,造成系统资源浪费,命令为:
>> status=fclose(fid)

打开和关闭文件的操作都比较费时,尽量不要将它们置于循环中,以提高程序执行的效率

读取二进制文件
MATLAB 中函数 fread 可以从文件中读取二进制数据,将每一个字节看成一个整数,将 结果写入一个矩阵返回。最基本的调用形式为:
a=fread(fid)

写入二进制文件
函数 fwrite 的作用是将一个矩阵的元素按所定的二进制格式写入某个打开的文件,并返 回成功写入的数据个数。格式为:
count=fwrite(fid,a,precision)

读取文本文件
如果需要将文本文件中的某一行读出,并将该行的内容以字符串形式返回,可采用以下 两个命令:
tline=fgetl(fid)
tline=fgets(fid)

若已知 ASCII 文件的格式,要进行更精确的读取,可用 fscanf 函数从文件中读取格式化 的数据,其使用语法如下:
[a,count]=fscanf(fid,format,size)

fscanf 在读取文件时,是逐行进行的,在返回矩阵时,是将数据逐列写入的。(2)本 节所介绍的命令不能对二进制文件进行操作。(3)sscanf 函数和 fscanf 函数的功能类似, 不同的是 sscanf 是从字符串中读取数据,而不是对文件的操作。

MATLAB 的函数 fprintf 的作用是将数据转换成指定格式字符串,写入到文本文件中。其 语法格式为:
count=fprintf(fid,format,y)

控制文件内位置指针的函数 函数 功能 feof 测试指针是否在文件结束位置 fseek 设定文件指针位置 ftell 获取文件指针位置 frewind 重设指针至文件起始位置 
• feof feof 用于测试指针是否在文件结束位置,其语法格式为:
feof(fid)
• fseek fseek 用于设定指针位置,其语法格式为:
status=fseek(fid,offset,origin)
• ftell ftell 用于返回现在的位置指针,其语法格式为:
position=ftell(fid)
• frewind frewind 用于将指针返回到文件开始,语法格式为:
frewind(fid)
实例:下面通过一个例子来介绍这几个命令的使用方法,示例代码如下:
a=[1:6];
fid=fopen(’six.bin’,’w’);
fwrite(fid,a,’short’);
status=fclose(fid);
fid=fopen(’six.bin’,’r’);
six=fread(fid,’short’);
eof=feof(fid);
frewind(fid);
status=fseek(fid,2,0);
position=ftell(fid);
版权声明:本文为博主原创文章,未经博主允许不得转载。

matlab对文件的操作

1、 fopen 打开文件或者得到文件打开的信息。例如: >> f=fullfile('D:','Matlab','example.txt'); >>fid=fopen(f); %打开文件,fid=-...
  • DelSpooner
  • DelSpooner
  • 2015年12月04日 17:22
  • 836

Matlab学习 之 文件操作

MATLAB中有两种文件I/O程序:high level and low level. High level routines: 包括现成的函数,可以用来读写特殊格式的数据,并且只需要少量的编程。 ...
  • u013007900
  • u013007900
  • 2016年05月10日 19:47
  • 1142

matlab文件与子文件操作

matlab是算法仿真比较流行的工具,在做各种算法仿真的时候需要对数据的处理,有时候包括对数据的读取以及存储等常见操作。下面就来简单说说matlab处理文件和子文件的一些相关操作。      在各种语...
  • cai2016
  • cai2016
  • 2016年11月27日 20:40
  • 861

matlab---文件路径操作

1、fullfile 用于将若干个字符串连接成一个完整的路径,例如: filepath=fullfile('D:','MATLAB',‘example.txt’); 效果是:filepath...
  • bwcxadzkjd
  • bwcxadzkjd
  • 2017年06月21日 09:59
  • 116

MATLAB文本文件操作总结

MATLAB读取txt文件的几种方法总结
  • u011331383
  • u011331383
  • 2015年04月07日 20:13
  • 1795

matlab文本文件操作

matlab 环境下操作文本文件文本文件简介众所周知,计算机中所有的信息是以二进制的方式存在。而计算机中的文件主要以两种方式存在,即二进制文件和文本文件。文本文件有字符组成而字符由相应的编码确定的二进...
  • m0_37639589
  • m0_37639589
  • 2017年10月28日 14:40
  • 419

matlab批量读取文件

我试图在Matlab中使用string类型的数组存储多个待读取的文件,但是读取失败。查了相关资料后,发现可以直接使用如下代码实现批量读取文件: list=dir(['L:\kde\EM\valida...
  • vernice
  • vernice
  • 2015年09月19日 11:10
  • 1492

matlab文件操作

文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须...
  • dianmao0917
  • dianmao0917
  • 2013年08月19日 15:15
  • 395

MATLAB文件操作

文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。 1、文件的打开与关闭 1)打开文件 在读写文件之前,必须...
  • fly_de_penguin
  • fly_de_penguin
  • 2015年11月29日 13:35
  • 24

MATLAB 文件操作

matlab文件操作文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件。MATLAB提供了一系列低层输入输出函数,专门用于文件操作。1、文件的打开与关闭1)打开文件在读写文件之...
  • clevise
  • clevise
  • 2009年11月11日 19:34
  • 709
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:matlab文件操作
举报原因:
原因补充:

(最多只允许输入30个字)