writetable or dlmwrite to save an array as a txt file

8 visualizaciones (últimos 30 días)
Simon Lind
Simon Lind el 21 de Feb. de 2024
Comentada: Voss el 12 de Abr. de 2024
Hello community
I need to save a txt file like this one
1 -26.2 -31.7
2 -27.1 -33.9
3 -25.5 -30.2
4 -24.4 -30.8
starting from this array
1.0000 -26.2000 -31.7000
2.0000 -27.1000 -33.9000
3.0000 -25.5000 -30.2000
4.0000 -24.4000 -30.8000
writetable seems to have limitations. Is there any other way?
Thank you!

Respuesta aceptada

Voss
Voss el 21 de Feb. de 2024
Here's one way:
M = [
1.0000 -26.2000 -31.7000
2.0000 -27.1000 -33.9000
3.0000 -25.5000 -30.2000
4.0000 -24.4000 -30.8000
];
filename = 'your_file.txt';
% write the file:
fid = fopen(filename,'w');
fprintf(fid,'%2d %.1f %.1f\n',M.');
fclose(fid);
% check the result:
type(filename)
1 -26.2 -31.7 2 -27.1 -33.9 3 -25.5 -30.2 4 -24.4 -30.8

Más respuestas (2)

Walter Roberson
Walter Roberson el 21 de Feb. de 2024
M = [
1.0000 -26.2000 -31.7000
2.0000 -27.1000 -33.9000
3.0000 -25.5000 -30.2000
4.0000 -24.4000 -30.8000
];
writematrix(M, 'your_file.txt', 'delimiter', ' ');
type your_file.txt
1 -26.2 -31.7 2 -27.1 -33.9 3 -25.5 -30.2 4 -24.4 -30.8

Simon Lind
Simon Lind el 12 de Abr. de 2024
thank you very much for you help!

Community Treasure Hunt

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

Start Hunting!

Translated by