2014-12-01 3 views
0

У меня есть программа, которая считывает данные из .trc файлов. Но на данный момент он может читать только файлы .trc, которые находятся в текущем каталоге, то есть в папке MATLAB. Если я хочу, чтобы он читал файл, мне нужно скопировать файл в папку MATLAB. Есть ли способ переместить в разные каталоги и выбрать другой файл .trc? Я пробовал использовать dir, uigetdir и т. Д., Но ничего не работает!Как читать файлы trc из разных директорий в matlab

+0

Невозможно определить, что вы делаете неправильно, без примера того, что вы пробовали, и полученной ошибкой. – excaza

ответ

0

Очень просто фильтровать результаты с помощью команды dir с расширением файла, если вы указываете папку для поиска с подстановочным символом вместо имени файла. Затем вы можете перебрать сгенерированный список имен файлов в структуре вывода (как показано) или все, что вам нужно сделать с этими файлами.

folderName = 'C:\Path\To\Target\Folder\'; 
fileList = dir(strcat(folderName, '*.trc')); 

for k = 1:length(fileList) 

    fileHere = fullfile(folderName, fileList(k).name); 
    % Do what you need with the files in here 

end 
+0

Можно ли это сделать с помощью cd (каталог изменений)? По какой-то причине ваш метод не работает. Он всегда говорит «Файл не найден». Это сообщение, которое оно должно генерировать, когда fid = -1. –

+0

Вы можете использовать команду 'cd', чтобы сделать что-то подобное. То, что я разместил, никогда не будет генерировать ошибку «Файл не найден», потому что если файлы не найдены в соответствии с критериями поиска, код просто не будет вводить цикл for. Ошибка должна быть в вашем коде, но я не могу ее диагностировать, если вы не опубликуете, что это за код. – Staus

Смежные вопросы