MATLAB not saving matrix as .txt correctly
3 次查看(过去 30 天)
显示 更早的评论
I'm having some problems saving a matrix as a .txt file. I want to save the matrix as it appears in MATLAB, with columns. In the command screen, the matrix appears as normal (below), however, when I save it as a .txt, it doesn't seem to be able to define between columns and mixes all the numbers together in a single row. I have tried using '\t' and ' ' as delimiters but this isn't helping. I have also tried saving the matrix as a variable rather than ans. Does any one know how to solve this?
ans=
0 0
0.1000 0.1010
0.2000 0.2080
0.3000 0.3270
0.4000 0.4640
0.5000 0.6250
0.6000 0.8160
0.7000 1.0430
0.8000 1.3120
0.9000 1.6290
I'm using
dlmwrite('first10_rows.txt',ans,'delimiter','\t','precision',3)
to save the file, which produces this in the text file
0 0
0.1 0.101
0.2 0.208
0.3 0.327
0.4 0.464
0.5 0.625
0.6 0.816
0.7 1.04
0.8 1.31
0.9 1.63
Thanks
0 个评论
采纳的回答
Guillaume
2015-12-18
编辑:Guillaume
2015-12-18
You must have been looking at the text file with notepad. Any more sophisticated text file reader (e.g. notepad++) would have shown you the file the way you expected.
I don't know if it's on purpose or a bug, but, in 2015b on windows, dlmwrite use unix style line endings instead of windows line ending. Most text editors don't care which one it is but lowly notepad only recognises windows line endings. Note that matlab does not care either, it'll read your text file just right regardless of the line ending.
To force dlmwrite to use windows line endings:
dlmwrite('first10_rows.txt',ans,'delimiter','\t','precision',3, 'newline', 'pc')
0 个评论
更多回答(1 个)
Renato Agurto
2015-12-18
编辑:Renato Agurto
2015-12-18
2 个评论
Guillaume
2015-12-18
Please format links as link (either use the link button or surround it with < and >)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Text Files 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!