在 ascii-file 中保存没有初始选项卡的矩阵

Save matrix without the initial tab in ascii-file

我有一个包含 XY 坐标的矩阵 vtx,我想将它写入一个已经存在的文件,并带有一些自定义 headers.

我使用 save('z2.vtx','vtx','-ascii','-append'); 行将矩阵保存到特定文件中。问题是我希望每一行都没有初始选项卡。

而不是输出:

#Some headers
   6.229968e+00    -5.000000e-01

我愿意

#Some headers
6.229968e+00    -5.000000e-01

这可以用 savedlmwrite 解决吗?还是我需要做一个循环并使用自定义格式的 fwrite

save 相比,使用 dlmwrite 编写简单的文本文件有更多的选择,例如定界符或行和列偏移量的定义。

dlmwrite('z2.vtx',vtx,'delimiter','\t','precision','%1.2e','-append');

关于您的评论:您正在寻找 dlmwrite'precision' 属性 并且您想要定义 C-style format string.

示例:'%1.2e' 给你一个浮点数,点前一位,点后两位,始终使用科学记数法。

文本文件中的输出:

4.27e+01    8.85e+01
9.55e+01    8.40e+01
7.24e+01    1.18e+01
5.81e+01    4.10e+01
5.40e+01    1.20e+01
7.05e+01    5.72e+01
...