reading multiple files using importdata

Hi! Wanna import data from various .txt-files. And I am wondering why the code, I'm using, is not working. Probably I did a mistake in the format of entering the file name and directory. Anybody know what to do?
if true
pth = 'C:\Users\Marcus\Documents\MATLAB\data\'; % directory of the folder, where data files are saved
liste = dir(strcat(pth,'*.txt')); % creates a list of all files in the folder directory pth
files = {liste.name}; % creates a cell array with the name of the data file
for k = 1:numel(files);
fullname = strcat(pth,files) ;
data = importdata(fullname);
end

回答 (1 件)

michael
michael 2016 年 10 月 3 日

1 投票

1. you have to do the dir command before the strcat
2. you can't do the stract on the whole list, you have to do it one by one
i.e
liste = dir('*.txt');
for i=1:length(liste)
files=strcat(pth,'\',liste.name(i))
end

2 件のコメント

HolgSpre
HolgSpre 2016 年 10 月 4 日
Thank's for the help so far! I'm sorry that I did not specify in my question that the matlab-file will not be saved in the same folder as the data files. That's why I used
liste = dir(strcat(pth,'*.txt'));
unfortunately
liste = dir('*.txt');
is not working in that case...Any other ideas?
HolgSpre
HolgSpre 2016 年 10 月 4 日
Finally it worked with:
pth = 'C:\Users\Marcus\Documents\MyDataFolder\';
liste = dir(strcat(pth,'*.txt'));
files = {liste.name};
for k = 1:numel(files);
file{k} = strcat(pth,files{k});
data{k} = importdata(file{k},' ',6);
end
Thanks for your help!

サインインしてコメントする。

カテゴリ

ヘルプ センター および File ExchangeDates and Time についてさらに検索

タグ

質問済み:

2016 年 10 月 3 日

コメント済み:

2016 年 10 月 4 日

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by