【发布时间】:2015-04-25 12:25:52
【问题描述】:
我有多个 .txt 文件,每个文件都包含相同的格式。
我一直使用以下方法将这些单独读入 MATLAB:
fid1 = fopen('Test_1.txt','r');
data = textscan(fid1, '%f %*f %f %f %f %*[^\r\n]','HeaderLines',4);
并使用cell2mat 从那里提取值。
如何批量导入所有 .txt 文件并全部存储?
到目前为止,我使用以下方法检测到重要的相关文件:
files = dir('Test_*.txt');
但我不确定如何使用循环以上述方式批量导入每个 .txt 文件。
【问题讨论】:
-
你事先知道每个文件的行数吗?顺便说一句,你得到了所有的“成分”。您只需要循环并将读取的变量存储在您想要的位置/方式,例如在单个矩阵中。
-
您似乎已经问过同样的问题:stackoverflow.com/questions/29844005/…。请不要重复提问!
-
现在才弄明白(见:编辑)。出于兴趣,有没有更有效的方法可以在不使用循环的情况下做到这一点?
-
您可能应该将您的解决方案添加为答案并接受它,以便其他人可以更轻松地看到问题已解决,并删除 brodroll 提到的此问题的重复项
-
@AnnaSchumann 很高兴你想通了!您可以将其作为解决方案发布,而不是编辑问题。我不知道在没有 for 循环的情况下读取多个文件(带标题)的更好方法
标签: matlab