How to read a list of strings in a txt file?
14 ビュー (過去 30 日間)
古いコメントを表示
Dear All,
I need to read a txt file which contains a list of names with different lengths. Here is my txt file:
mynames:
OAKFIELD
5556_T
ROLLINS
......
I need to read those names to store them in a string array MyNames. MyNames should be like below:
MyNames = [
'OAKFIELD'
'5556_T'
'ROLLINS'
......
];
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:
break;
end
end
But what I got is Not correct. MyNames is an array having 10 coulmns and shows as
'CHSTRSVC←↵'
'5556_T'←↵'
'ROLLINS←↵'
...
0 件のコメント
採用された回答
Star Strider
2020 年 9 月 17 日
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.
.
4 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で String Parsing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!