matlab读出和写入文件,matlab文件读取和写入

(3)fopen fopen打开一个文件并创建文件标识以供接下来的读写等操作。fopen命令本身不进行读操作。然后可以使用fscanf读取数据,根据需要对数据进行筛选编辑。   例:读取字符串的方法 data.txt 0 1 2 1 2 3 1 2 3 End.   fid=fopen('data.txt');    %打开文件,创建文件标识 A=fscanf(A,'%c');         %读取数据 fclose(fid);              %关闭文件标识 i=findstr(A,'End');       %查找标识 B=A(1:i-3);               %提取数据,换行为2个字符 C=str2num(B);             %将数据转换成数值矩阵   结果: A = 0 1 2   1 2 3   1 2 3   注意其中str2num同样需要保证数值矩阵中列数一致,如果不一致,则结果为空。   例 0 1 2 1 2 1 2 3 End.   结果C=[]     例:读取行的方法 fid1=fopen('data.txt'); fid2=fopen('numbers.txt','w'); while ~feof(fid1)     aline=fgetl(fid1);     if double(aline(1))>=48&&double(aline(1))<=57         fprintf(fid2,'%s\n',aline);         continue     end end fclose(fid1); fclose(fid2);   numbers.txt即为按行保存的数值文件 还有另外的方法 在MATLAB中,来读取和写入文本文件是很简单的事。下面,就来简单介绍下。如果有其他问题,请留言。 一、读取文本文件 思路: 1、用fopen来打开一个文件句柄 2、用fgetl来获得文件中的一行,如果文件已经结束,fgetl会返回-1 3、用fclose来关闭文件句柄 比如,TIM_Grid_Data.txt的内容如下: 0.1 0.1 151.031 -12.3144 -29.0245 3.11285 0.1 0.2 120.232 -2.53284 -8.40095 3.3348 0.1 0.3 136.481 -0.33173 -22.4462 3.598 0.1 0.4 184.16 -18.2706 -54.0658 2.51696 0.1 0.5 140.445 -6.99704 -21.2255 2.4202 0.1 0.6 127.981 0.319132 -29.8315 3.11317 0.1 0.7 106.174 -0.398859 -39.5156 3.97438 0.1 0.8 105.867 -20.1589 -13.4927 11.6488 0.1 0.9 117.294 -11.8907 -25.5828 4.97191 0.1 1 79.457 -1.42722 -140.482 0.726493 0.1 1.1 94.2203 -2.31433 -11.9207 4.71119 那么可以用下面的代码来读取该文本文件: fid=fopen('TIM_Grid_Data.txt','r'); best_data=[]; while 1     tline=fgetl(fid);     if ~ischar(tline),break;end     tline=str2num(tline);     best_data=[best_data;tline]; end fclose(fid); 这样文本文件中的内容就读入到了best_data中了。 二、写入文本文件 思路: 1、用fopen打开一个文件句柄,但要用“w+”或“r+”等修饰符,具体参看help fopen 2、用fprintf写入数据 3、用fclose来关闭文件句柄 比如下面的程序: fid=fopen('Data.txt','a+'); fprintf(fid,'Hello,Tim\r\n'); fprintf(fid,'http://blog.sina.com.cn/pengtim'); a=rand(1,10); fprintf(fid,'%g\r\n',a); fclose(fid); 打开Data.txt文件,可以看到: Hello,Tim http://blog.sina.com.cn/pengtim0.655741 0.0357117 0.849129 0.933993 0.678735 0.75774 0.743132 0.392227 0.655478 0.171187 所以,用MATLAB来进行操作文本文件是不是很简单啊。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值