How to read a list of strings in a txt file?

11 views (last 30 days)
Dear All,
I need to read a txt file which contains a list of names with different lengths. Here is my txt file:
I need to read those names to store them in a string array MyNames. MyNames should be like below:
MyNames = [
Here is my code:
fid = fopen(FileName, 'r');
if fid < 0, error('Cannot open file'); end
while KKK < 30000 % Infinite loop
s = fgets(fid);
if ischar(s)
MyNames = [MyNames; s];
else % End of file:
But what I got is Not correct. MyNames is an array having 10 coulmns and shows as

Accepted Answer

Star Strider
Star Strider on 17 Sep 2020
Unless I am missing something, ‘KKK’ is never incremented inside the while loop, so it will in fact be infinite.
If you are actually using ‘KKK’ as a counter (and therefore incrementing it), this could work:
MyNames{KKK} = s;
That creates a cell array, and while that can create additional steps required to recover its contents later, it could be an effective approach.
A better approach could be readtable. The first variable would be the names, and you could simply ignore the others.

Sign in to comment.

More Answers (0)


Find more on Dates and Time 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!

Translated by