Matlab函数dlmwrite:将一个矩阵写入文件的函数
dlmwrite
将一个矩阵写到由分隔符分割的文件中。
在保存整数到文件时使用save存为ascii文件时,常常是文件里都是实型格式的数据(有小数点,和后面很多的0,看着很不方便)。于是要保存此类数据时,我们可以使用此dlmwrite命令。
使用方法:
dlmwrite('filename', M)
使用默认分隔符“,”将矩阵M写入文本文件filename中;
dlmwrite('filename', M, 'D')
使用分隔符D分割数据,“\t”表示tab分割,“,”为默认分割符;
dlmwrite('filename', M, 'D', R, C)
从矩阵M的第R行、第C列开始,作为要写矩阵块的左上角,将数据用D分割写入文件。
其他用法有:
dlmwrite('filename', M, 'attrib1', value1, 'attrib2', value2, ...)
dlmwrite('filename', M, '-append')
dlmwrite('filename', M, '-append', attribute-value list)
dlmwrite(filename, M, 'attrib1', value1, 'attrib2', value2, ...) matabc
是下面所示的替代语法,在其中用户可以在参数列表中指定多个属性-数值对。每个属性后面必须跟一个相应的值。
属性值
delimiter
分隔符的字符串,用于分割矩阵的元素
newline
每行终止使用字符(S)(见下表)
precision
将数据写入到文件所使用的数值精度。指定有效位数或C风格的格式化字符串%开始,如'%10.5f'的数量。
行终止
描述
'pc' 'pc'终结(意味着回车/换行符(CR/LF))
'unix' 'unix' 终结(意味着换行符(LF))
5.dlmwrite(filename, M, '-append') matabc
将矩阵数据追加到文件的末尾。如果你不指定''-append',dlmwrite覆盖文件中的任何现有数据。
7.dlmwrite(filename, M, '-append', attribute-value list)
接受一个属性值对列表。用户可以将'-append'标志放在属性-数值对之间,但不能放在属性和它的值的中间。
例如:
a = [1 2 3; 4 5 6; 7 8 9];
dlmwrite('test.txt', a);
则test.txt中的内容为:
1,2,3
4,5,6
7,8,9
而使用save
a = [1 2 3; 4 5 6; 7 8 9];
save 'tst.txt' a -ascii;
文本文件里的内容为:
1.0000000e+000 2.0000000e+000 3.0000000e+000
4.0000000e+000 5.0000000e+000 6.0000000e+000
7.0000000e+000 8.0000000e+000 9.0000000e+000