[英]How to write a for-loop to read 1000 text files in Matlab?
我有1000個文本文件,其名稱是A0000.txt,A0001.text,...,A1000.text。 我想讀取文本文件中的信息並將其中一些存儲在excel文件或csv文件中(首選csv)。
我該如何定義可以執行此任務的for循環?
我可以使用這個函數A = textread('A0000.txt','%s')
來讀取一個文本文件,但我不知道如何將它放在for循環中。 如果文件的名稱是1.txt,2.txt,...,1000.txt,那將更容易。
如果你能提供任何幫助,我將感激不盡。
您應該使用sprintf
生成相關的字符串:
for i=1:1000
fileName = sprintf('A%04d.txt',i);
A{i} = textread(fileName ,'%s')
end
%04d
告訴sprintf
該數字應該有前導零。
以下內容生成當前目錄中包含的txt文件列表。 然后它讀入所有文件。 如果文件名不是順序的,這很有用。
filelist = dir([pwd() filesep '*.txt' ]);
fileNames = {filelist.name}';
nFiles = length(fileNames);
for i= 1:nFiles
TF{i} = textread(fileNames{i},'%s');
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.