我有多个文件,如下所示,我需要运行一个循环来读取和绘图:
WC-02 18507.0 1115851.0 1092068.3 4239.94 Fault_interpretation_22 1 WC-02
WC-02 18451.0 1114476.0 1091761.0 5012.56 Fault_interpretation_22 1 WC-02
我该怎么做?
答案 0 :(得分:0)
您可以使用textscan
http://ch.mathworks.com/help/matlab/ref/textscan.html
您需要知道每行中有多少列,以及每个列的类型(字符串,浮点数,整数......)
从文档中可以看到与您类似的示例:
文件内容:
09/12/2005 Level1 12.34 45 1.23e10 inf Nan Yes 5.1+3i
10/12/2005 Level2 23.54 60 9e19 -inf 0.001 No 2.2-.5i
11/12/2005 Level3 34.90 12 2e5 10 100 No 3.1+.1i
代码:
fileID = fopen('scan1.dat');
C = textscan(fileID,'%s %s %f32 %d8 %u %f %f %s %f');
fclose(fileID);
celldisp(C)
PD:Textscan读取整个文件,而不是逐行读取。但是,您可以使用单元格索引访问所需的行:
C{3} % content of the third line