Multiple outputs by a loop

1 view (last 30 days)
Ivan Mich
Ivan Mich on 16 May 2020
Commented: Stephen23 on 16 May 2020
Hello, I have a question. I would like to create multiple files(outputs) by a loop. File parameters.txt has two lines. I would like to create files with name output1 and output2, by a loop. My commands are these:
Param=regexp(fileread('parameters.txt'),'\r?\n','split') .';
fori=1:size()
fid = fopen('output%d','w');
fprintf(fid,'%s\n')
fclose(fid)
end
But I do not know how to make it . Could you help me?
1 Comment
Stephen23
Stephen23 on 16 May 2020
Note that with out a third (or more) input argument this will not print anything:
fprintf(fid,'%s\n')

Sign in to comment.

Answers (2)

Ajay Kumar
Ajay Kumar on 16 May 2020
Edited:Ajay Kumar on 16 May 2020
Param=regexp(fileread('parameters.txt'),'\r?\n','split') .';
fori=1:size()
fid = fopen( ['output',我,'.txt'],'w');
fprintf(fid,'%s\n')
fclose(fid)
end
1 Comment
Stephen23
Stephen23 on 16 May 2020
This will not work as expected.
Lets look at the actual output character vector when i=1:
>> i = 1;
>> double(['output',i])
ans =
111 117 116 112 117 116 1
这些都是可打印字符“o”,“u”、“t”,'p', 'u' and 't', followed by the unprintable "Start of Heading" control character. I doubt that that is very useful, or intended.

Sign in to comment.


Stephen23
Stephen23 on 16 May 2020
Edited:Stephen23 on 16 May 2020
Replace the fopen with these two lines:
fnm = sprintf('output%d.txt',i);
fid = fopen(fnm,'wt');
2 Comments
Stephen23
Stephen23 on 16 May 2020
"How could I do this?"
This is very general question: it is not clear which of the many steps involved you are asking about.
You don't explain what "calculations" are involved, so clearly I can't help with that. You don't even say what class or size the data arrays are, so I can't help you with selecting a suitable method to save your data.
If you want to export multiple files in a loop then you should pick a suitable function (which might be fprintf as your question shows):
and follow the examples here
Read the sprintf documentation to know how to specify the format string for the filenames:
Read the size documentation to know how to measure the dimensions of an array:

Sign in to comment.

社区卫生y Treasure Hunt

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

Start Hunting!