-2

Shai と CTZStef が提案したように、MATLAB で類似した名前の複数のファイルを開く必要がある場合は、次のようにする必要があります。

for k=1:size(fls)
    fileName = strcat('int_',num2str(k),'.ASC');
    A(k) = importdata(fileName, ' ', 9);
    x(k) = A(k).data(:,1);
    y(k) = A(k).data(:,2);
end

またはまた

fls = dir('int_00_*.ASC');
for fi=1:numel(fls)
    A(fi) = importdata(fls(fi).name, ' ',9);
end

問題は、それらのどれも機能しないことです。私は何をすべきか?MATLAB のバージョンに問題がありますか?

4

1 に答える 1

2

あなたが得た答えをより綿密にたどる必要があります:

  1. このstrcatソリューションは、ファイル名のゼロ パディングを処理できません。すべてのファイルの名前を手動で'int_001.ASC'からに 変更する必要があります'int_1.ASC'
    更新(@DedekMraz のコメントによる):strcat入力文字列を次のように変更する必要があります。strcat('int_', num2str( k, '%03d' ), '.ASC');

  2. これと同様の戦略を使用できます。すでに得た回答の更新を参照してください。

  3. あなたがあなたのdir関数に与えた入力は間違っていdir('int_*.ASC')ますdir('int_00_*.ASC')

于 2013-03-13T09:19:08.123 に答える