Reading Text Files with Numbers and String
26 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hans123
le 13 Août 2020
Commenté : Star Strider
le 14 Août 2020
Hi, this is a common question and I could not find an answer pertaining to my problem
I have attached an excerpt of my textfile in this question
my text file is built like this and I want to extract ID time and C columns, I tried dlmread and textscan but they yield errors, any help appreciated
ID#: 0 time: 6379.937500 A: 0 B: 0.000000 ; C 0.000000
% my current code
fileID = fopen('ni100khz.txt');
A=textscan(fileID, '%s %f %s %f %s %f %s %f %s %s %f %f ');
fclose(fileID);
% it doesn't scan the whole txt file
2 commentaires
Réponse acceptée
Star Strider
le 13 Août 2020
Modifié(e) : Star Strider
le 13 Août 2020
Try this:
fidi = fopen('data1.txt');
A = textscan(fidi, 'ID#: %f time: %f A: %f B: %f C %f', 'Delimiter',{'\t',';'}, 'MultipleDelimsAsOne',1, 'CollectOutput',1, 'EndOfLine','\r\n');
fclose(fidi);
producing:
Am = cell2mat(A)
Am =
100 4.6563 0 0 0
100 4.6875 0 0 0
100 4.6875 614 3.001 30.01
EDIT —
To extract ‘ID#’, ‘time:’ and ‘C’ only:
A = textscan(fidi, 'ID#: %f time: %f A: %*f B: %*f C %f', 'Delimiter',{'\t',';'}, 'MultipleDelimsAsOne',1, 'CollectOutput',1, 'EndOfLine','\r\n');
The rest of the code is unchanged.
.
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Text Data Preparation dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!