Create results .txt files with loop

8 ビュー (過去 30 日間)
Ivan Mich
Ivan Mich 2020 年 5 月 17 日
コメント済み: Ivan Mich 2020 年 5 月 19 日
I am making calculations by reading a .txt file. "data1.txt"
data1.txt has this format:
5
10
I am reading the first line of data1.txt the number a=.... after that I am making the calculation c=a+b, where b=5.
I would like to create 2 txt files, one with the result of the first calculation (I mean c=a+b=5+5=10), and one .txt file the result of the second calculation (I mean c=a+b=10+5=15).
How can I do that?

採用された回答

Stijn Haenen
Stijn Haenen 2020 年 5 月 19 日
you can create txt files with:
FP=fopen(sprintf('test%g.txt',1),'wt');
fprintf(FP,num2str(data));
fclose(FP);
  2 件のコメント
Ivan Mich
Ivan Mich 2020 年 5 月 19 日
One more question. If I want to merge them? I mean I want to have after all iteration to unit test1, test2.txt, to one .txt file with all the results. I mean final .txt file to have vertically the result of test1.txt,
in the second line the results of test2.txt etc.
How could I do that?

サインインしてコメントする。

その他の回答 (1 件)

Johannes Hougaard
Johannes Hougaard 2020 年 5 月 19 日
Yes you should use fprintf - but you need a format input as well to get new lines.
textfile = 'data1.txt';
fid = fopen(textfile);
filecontent = textscan(fid,'%s','delimiter','\n');
fclose(fid);
a = cellfun(@str2double,filecontent{1});
b = 5;
c = a+b;
fid=fopen('data2.txt','wt+');
fprintf(fid,'%d\n',c);
fclose(fid);

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by