Reading a multi line string into a single string
4 次查看(过去 30 天)
显示 更早的评论
I have opened a file with a string consisting of three lines. I want to read these lines from the file and store them in my "template" variable as a three line string. All I can get is the last line of the string to be stored in "template"
while feof(fid) == 0;
line = fgets(fid);
template = strvcat(line)
end
Thanks for the help
0 个评论
采纳的回答
Jan
2011-3-19
template = {};
while feof(fid) == 0;
template{end + 1} = fgets(fid);
end
templateChar = char(template);
More efficient:
C = textscan(fid, '%s', 'delimiter', '\n');
templateChar = char(C{1});
EDITED: textread -> textscan (Thanks, Jiro!)
1 个评论
Jiro Doke
2011-3-20
@Jan, I think you meant to use "textscan", not "textread". "textread" requires the first input to be the actual file name, not the output of fopen. And "textscan" is preferred anyway.
更多回答(1 个)
另请参阅
类别
在 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!