MATLAB去掉数据文件中的字符串及逗号
(2017-09-06 15:52:40)| 分类: MATLAB | 
【code 1】
clear;clc;
fol = pwd;  
for i=1:5
   i=i
dataname = ['warp-' num2str(i)];
fidin= fopen([fol '\' dataname '.dat']);
row = 1; %初始行
 while ~feof(fidin) % 判断是否为文件末尾
 tline = fgetl(fidin); % 从文件读行
  if ~isempty(str2num(tline)) 
%如果是我们想要的三列数据的话,就存储起来;
    data(row,:)
= str2num(tline);
    row = row +
1;
  end
 end
save([dataname '.dat'], 'data','-ascii');
end
                
fol = pwd;
for i=1:5
dataname = ['warp-' num2str(i)];
fidin= fopen([fol '\' dataname '.dat']);
row = 1; %初始行
save([dataname '.dat'], 'data','-ascii');
end
【code 2】
%只能运行一次,重复运行会清空文件
clear;clc;fol=pwd;
dataname = ['w50-2a0-0du-1'];
fidin= fopen([fol '\' dataname '.dat'])
%*************去掉字符串*************%
row = 1;
while ~feof(fidin)
end
【注】:
1. 函数feof(fid) 用法:
文件指针 fid 到达文件末尾时返回“真”值;否则返回“假”;
~feof 是在 feof 前加了“非”,是逻辑表达式:文件指针到达文件末尾时 该表达式值为“假”;否则为“真”;
while ~feof 表示:若未读到文件末尾则继续 循环
while feof 表示: 若未读到文件末尾则终止循环,所以只循环一次就终止
2.tline=fgetl(fid)
从文件中读取行,删除文件换行符
返回由文件标识符fid指示的文件的下一行。如果fgetl遇到文件结束指示符,则返回-1。对于fid的完整描述请参考fopen函数。fgetl函数常用于含有文件换行符的文件。
后一篇:整段语句设为注释的方法
					
加载中…