Как запустить один и тот же код со многими файлами (разные имена файлов в одном каталоге) в Matlab? - PullRequest
5 голосов
/ 01 июля 2011

У меня есть тысяча файлов .dat для запуска с той же программой. Есть ли какой-нибудь более быстрый способ или скрипт для его автоматического запуска вместо того, чтобы запускать их один за другим? Файлы .dat имеют разные имена файлов.

Программа выглядит примерно так:

fid=fopen('**abd**.dat');
C=textscan(...);
...
save('**abd**.txt',data);

Абд - это имя файла. У меня есть тысячи файлов с разными именами файлов. Это немного раздражает, когда вы продолжаете копировать и вставлять эти имена файлов в программу и запускать ее. Кто-нибудь получил более быстрый способ или код для этого?

Ответы [ 2 ]

6 голосов
/ 01 июля 2011

вы можете использовать «dir», чтобы получить список файлов, а затем обработать их в цикле следующим образом.

fns = dir('*.dat');
for i = 1:length(fns)
    fid = fopen(fns(i).name);
    C = textscan(...);
    fclose(fid);
    save([fns(i).name,'.dat'],data);

end
1 голос
/ 01 июля 2011

Переосмыслите проблему.Напишите один скрипт для чтения текстового файла с именами файлов и строками.Тогда у вас есть 2 файла, а не тысячи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...