Printing to specific lines in a text file
1 次查看(过去 30 天)
显示 更早的评论
I have written code to generate 129 different 9 x 4 cells that contain text and numbers. I would now like to print all of these cells to a single text file, with each cell printed below the last one. How can I do this?
0 个评论
回答(1 个)
Simon
2013-11-11
Hi!
It is not difficult if the same columns are text and numbers. You can simply loop over all data and printf with "fprintf".
Do you have 129 separate variables? If so, think about storing them in a structure (or 3d cell array) for easier access. If you have a 3d cell array, use
for n = 1:129
for r = 1:9
fprintf(fid, '%d %s %s %f\n', M{n, r, 1}, M{n, r, 2}, M{n, r, 3}, M{n, r, 4});
end
end
of course you need file handling with fopen/fclose in addition.
3 个评论
Walter Roberson
2013-11-11
fid = fopen('TheFileName.txt');
and at the end
fclose(fid);
Simon
2013-11-12
Hi!
In addition to Walter's answer you should use
fid = fopen('TheFileName.txt', 'w');
to be able to write to the file. The fopen-command without permission is for read access only.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Cell Arrays 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!