How to read information from a txt file header?

I have several hundred txt files with the below format.
http://cid-533c6ad99f5ed0c5.office.live.com/self.aspx/.Public/data2.txt
Is there a way that I can not only read the numeric data, but also the Date, Time, Latitude, and Longitude from the header automatically?
Thank you.

 Akzeptierte Antwort

Matt Tearle
Matt Tearle am 21 Mär. 2011

1 Stimme

Assuming the header information is always the same format (or at least same number of lines):
fid = fopen('data2.txt','rt');
tmp = textscan(fid,'%*s = %f',5,'headerlines',9);
metainfo = tmp{1}
hdrs = textscan(fid,repmat('%s',1,8),1,'delimiter',',');
units = textscan(fid,repmat('%s',1,8),1,'delimiter',',');
tmp = textscan(fid,repmat('%f',1,8),'delimiter',',','collectoutput',true);
data = tmp{1}
fclose(fid);
.
.
.
I'm hesitant to even suggest this, but... you could replace the third line with:
for k=1:size(tmp{1},1)
eval([tmp{1}{k},' = tmp{2}(k);']);
end
This will give you variables DATE, LATITUDE, etc with the values read from the file.
And may Cleve have mercy on my soul.

2 Kommentare

Liqing
Liqing am 21 Mär. 2011
Hi Matt,
This is amazing!
Thank you so much for the big help.
Liqing
Matt Tearle
Matt Tearle am 22 Mär. 2011
Glad it worked for you! Let me know if you need help deciphering any of the syntax :)

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Scripts finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by