How to save a matrix as text file?
60 views (last 30 days)
Show older comments
Emerson De Souza
on 28 Mar 2011
Commented: Walter Roberson
on 13 Jul 2019
I want to save a matrix as text file.
Each column should be separated by tab.
The output file should be read with any text editor
When the output is opened, it should display the numbers
in the same way it looks like in Matlab.
Thank you for your help
Emerson
0 Comments
Accepted Answer
Matt Fig
on 28 Mar 2011
One way is to use FPRINTF.
A = round(rand(6,7)*9) % Write this to file.
fid = fopen('Mymatrix.txt','wt');
for ii = 1:size(A,1)
fprintf(fid,'%g\t',A(ii,:));
fprintf(fid,'\n');
end
fclose(fid)
EDIT
Changed the 'w+' to 'wt' in the FOPEN call.
If you have floating point numbers, you may want to use '%20.18f \t' instead of '%g\t' or similar. See FPRINTF for format specifiers.
0 Comments
More Answers (3)
Walter Roberson
on 16 Dec 2017
You could also consider dlmwrite telling it to use \t as the delimiter.
You could also consider using
save('MyMatrix.txt', 'A', '-double', '-tab')
Where A is the name of the variable
3 Comments
Walter Roberson
on 5 Feb 2019
double precision. Without the -double only about 7 digits are written out, about as much as needed to reproduce single precision numbers.
See Also
Categories
Find more on File Operations in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!