Repeat a string several times and put it somewhere in a text file
15 次查看(过去 30 天)
显示 更早的评论
1.a: I have a piece of code that generates a particular text 10 times (see below), how can I do this without a loop?
1.b. I have also a text file somewhere in which there is a particular symbol "[$1]" (excluding the quotation marks), I would like to replace [$1] with the resulting string in 1.a. ( If I use a loop as above to generate the string, it is easy, but I want to be able to do this operation without a loop)
s6=[];
for i=1:10
s1= 'this is a new house';
s2='Gas 1000 2 3 4 water ';
s2a=num2str(1000.900);
r=[s2a, char(10)];
s3=[s2,' ', r, char(10)];
s4='TIME';
s5=num2str([1:10]');
%s5=mat2str([1:100]');
rr='';
for j=1:size(s5,1)
rr=[rr,s5(j,:),char(10)];
end
s6= [s6 s1,char(10),s3,s4,char(10),rr];
end
I appreciate your comments and help.
采纳的回答
Jan
2017-3-29
For replacing the string:
Ins = repmat(s6, 1, 10);
Str = fileread(FileName);
Str = strrep(Str, '[$1]', Ins);
fid = fopen(FileName, 'w');
if fid == -1, error('Cannot open file %s', FileName); end
fwrite(fid, Str, 'char');
fclose(fid);
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!