how to work with text files?
2 views (last 30 days)
Show older comments
hey all!
i'm new to matlab and i have this task basically: i have a text file of students' their id's and grades (after that the text goes down a line) and i need to make an array/structure out of it.
the example text is stud_ex.txt. all i know is how to use fopen but beyond that i'm clueless.
i see a lot of people online using things like "%" signs and i have no idea what these mean.
if anyone can shed some light i would really appreciate it.
0 Comments
Accepted Answer
Chris
on 19 Jun 2022
Edited: Chris
on 19 Jun 2022
fopen is for low-level file operations you may not need.
Perhaps try
data = importdata('stud_ex.txt')
Which will give you a struct with three fields:
data: [7×4 double]
textdata: {7×1 cell}
rowheaders: {7×1 cell}
The row headers are irrelevant, since you don't have headers. But you could use data.data and data.textdata.
Split the data array into student IDs and grades.
4 Comments
Chris
on 20 Jun 2022
Edited: Chris
on 20 Jun 2022
You're welcome.
There are also intermediate steps you could take:
fid = fopen('stud_ex.txt','r'); % Open file and attach a handle to it
thisline = fgetl(fid);
parsedline = split(firstline);
studentnames{1} = parsedline{1};
% ... do something like this in a "while ~feof(fid)" loop
fclose(fid) % Release the file
Convert the lines to strings for even easier handling.
More Answers (0)
See Also
Categories
Find more on Low-Level File I/O 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!