Create results .txt files with loop

2 Ansichten (letzte 30 Tage)
Ivan Mich
Ivan Mich am 17 Mai 2020
Kommentiert: Ivan Mich am 19 Mai 2020
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?

Akzeptierte Antwort

Stijn Haenen
Stijn Haenen am 19 Mai 2020
you can create txt files with:
FP=fopen(sprintf('test%g.txt',1),'wt');
fprintf(FP,num2str(data));
fclose(FP);
  2 Kommentare
Ivan Mich
Ivan Mich am 19 Mai 2020
Thanks!!!
Ivan Mich
Ivan Mich am 19 Mai 2020
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?

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Johannes Hougaard
Johannes Hougaard am 19 Mai 2020
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);

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by