⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 matlab读取数据.txt

📁 本程序是一个读取多通道数据的例子(逐字读取或整行读取)。
💻 TXT
字号:
% %逐行读取数据,多通道数据(即文本中多列数据)
fid = fopen('exp.txt');
A= fscanf(fid,'%g %g',[2 inf]);   
fclose(fid)

data.txt文件:

......

d+00005.00;v+00001.92;e+00003.08;u-0016;m+1004;t+0286;

d+00005.00;v+00002.06;e+00002.94;u-0041;m+0988;t+0287;

d+00005.00;v+00002.19;e+00002.81;u-0040;m+0947;t+0288;

d+00005.00;v+00002.31;e+00002.69;u-0033;m+0907;t+0289;

d+00005.00;v+00002.39;e+00002.61;u-0024;m+0874;t+0290;

d+00005.00;v+00002.47;e+00002.53;u-0024;m+0850;t+0291;

d+00005.00;v+00002.56;e+00002.44;u-0025;m+0826;t+0292;

d+00005.00;v+00002.61;e+00002.39;u-0016;m+0801;t+0293;

d+00005.00;v+00002.69;e+00002.31;u-0024;m+0785;t+0294;

d+00005.00;v+00002.72;e+00002.28;u-0007;m+0761;t+0295;

.....

 处理函数readprocess

function readprocess(file)

fid=fopen(file,'rt');

if(fid==-1)

    display('File not exist!');

    return;

end

array=[];

while(~feof(fid))

    str=fscanf(fid,'%s',1);

    if(length(str)>10)

        %d+00005.00;v+00002.72;e+00002.28;u-0007;m+0761;t+0295;

        col=sscanf(str,'d%f;v%f;e%f;u%f;m%d;t%d;');

        array=[array col];

    end

end

fclose(fid);

dhead=array(1,:);

head=array(2,:);

'r:',t,head,'b-'); 


%逐行读取数据,单通道
fid=fopen(fname,'r');i=1;
while 1
    tline = fgetl(fid);
    if ~ischar(tline), break, end
    A(i,1)=str2num(tline);i=i+1;
end
fclose(fid);



fscanf()为读取连续的一系列的非空格字符
fgetl()为读取文件的一行

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -