How to read information from a txt file header?

2 次查看(过去 30 天)
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.

采纳的回答

Matt Tearle
Matt Tearle 2011-3-21
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 个评论
Liqing
Liqing 2011-3-21
Hi Matt,
This is amazing!
Thank you so much for the big help.
Liqing
Matt Tearle
Matt Tearle 2011-3-22
Glad it worked for you! Let me know if you need help deciphering any of the syntax :)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by