extracting data from a text file to a spreadsheet
2 次查看(过去 30 天)
显示 更早的评论
Hello,
I have *.txt files in different folders as shown below;
Main Dir\Sub A\a1.txt, a2.txt, a3.txt......
Main Dir\Sub B\b1.txt, b2.txt, b3.txt......
Main Dir\Sub C\c1.txt, c2.txt, c3.txt......
Each txt file has the same format and has sevaral parameters. Below are just a few...
param: 600
SN number: 2010
Sim method: Low
I need to get these data to an excel spreasheet in below format;
param SN number Sim method
a1 600 2010 Low
a2 700 2011 High
a3 800 2012 Medium
b1 900 2013 High
b2 1000 2014 Low
b3 1100 2015 Low
Appreciate your assistance.
Thanks
0 个评论
采纳的回答
Walter Roberson
2020-7-23
dinfo = dir('Main Dir\*\*.txt');
filenames = fullfile({dinfo.folder}, {dinfo.name});
numfiles = length(filenames);
data = cell(numfiles, 4);
for K = 1 : numfiles
thisfile = filenames{K};
[~, basename, ~] = fileparts(thisfile);
fid = fopen(thisfile);
datacell = textscan(fid, 'param: %f\nSN number: %f\nSim method: %s',1);
fclose(fid);
data{K,1} = basename;
data{K,2} = datacell{1};
data{K,3} = datacell{2};
data{K,4} = datacell{3}{1};
end
datatable = cell2table(data, 'VariableNames', {'file', 'param', 'SN number', 'Sim method'});
writetable(datatable, 'OutputFilename.xslx');
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Spreadsheets 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!