簡體   English   中英

如何編寫for循環在Matlab中讀取1000個文本文件?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM