How to use textscan from the middle of a file.
1 view (last 30 days)
Show older comments
Hi. I am not very used to textscan and I really do not understand the help text. I have a textfile with A lot of text before the actuall data starts: " HL) [EOH] [BOD] 20111006 0:00,1210,134,98,984,7.83,235,2.47," etcetra with more columns. 20111006 0:10,1209,135,98,989,5.83,234,6.47," is next row and so on.
How can I with textscan only get the time in the beginning and remove all text before data starts, and remove all data after the time.
Any suggestions?
Thank you!
Accepted Answer
Andrei Bobrov
on 23 Nov 2011
[EDIT]
for the case when nameyourfile.txt contains data in the form:
'20111006 0:00,1210,134,98,984,7.83,235,2.47'
'20111006 0:10,1209,135,98,989,5.83,234,6.47'
fid = fopen('w3.txt');
d = textscan(fid,'%8s %5s %*s');
fclose(fid);
out0 = [d{:}];
t = cellfun(@(x)strcmp(x(end),','),out0(:,2));
out0(t,2) = cellfun(@(x)['0' x(1:end-1)],out0(t,2),'un',0);
out = arrayfun(@(x)[out0{x,:}],(1:size(out0,1))','un',0);
More Answers (0)
See Also
Categories
Find more on Data Import and Export in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!