dlmwrite
(不推荐)将矩阵写入到 ASCII 分隔文件
不推荐使用 dlmwrite
。请改用 writematrix
。有关详细信息,请参阅兼容性注意事项。
语法
说明
dlmwrite(___,
使用一个或多个名称-值对组参量另外指定分隔符、换行符、偏移量和精度选项。Name,Value
)
示例
写入逗号分隔的数据
创建样本数据数组 M
。
M = magic(3);
将矩阵 M
写入文件 myFile.txt
。
dlmwrite('myFile.txt',M)
查看文件中的数据。
type('myFile.txt')
8,1,6 3,5,7 4,9,2
写入以制表位分隔的数据并指定精度。
创建样本数据数组 M
。
M = magic(3)*pi
M = 3×3
25.1327 3.1416 18.8496
9.4248 15.7080 21.9911
12.5664 28.2743 6.2832
将矩阵 M
写入文件 'myFile.txt'
,用制表位字符分隔并使用 3 位数精度。
dlmwrite('myFile.txt',M,'delimiter','\t','precision',3)
查看文件中的数据。
type('myFile.txt')
25.1 3.14 18.8 9.42 15.7 22 12.6 28.3 6.28
写入和追加数据到文件
创建两个样本数值数据数组。
M = magic(5); N = magic(3);
将矩阵 M
导入到文件并使用空白作为分隔符。
dlmwrite('myFile.txt',M,'delimiter',' ');
将矩阵 N
追加到文件,从现有数据偏移一行。然后,查看文件。
dlmwrite('myFile.txt',N,'-append',... 'delimiter',' ','roffset',1) type('myFile.txt')
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9 8 1 6 3 5 7 4 9 2
使用 dlmread
读取 'myFile.txt'
中的数据。
dlmread('myFile.txt')
ans = 8×5
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9
8 1 6 0 0
3 5 7 0 0
4 9 2 0 0
当 dlmread
读取文件中的两个矩阵时,将用零填充较小的矩阵。
写入数据并指定精度
创建样本数值数据数组。
M = magic(3);
使用 6 位小数精度将矩阵 M
导入到文件。
dlmwrite('myFile.txt',M,'precision','%.6f');
查看文件中的数据。
type('myFile.txt')
8.000000,1.000000,6.000000 3.000000,5.000000,7.000000 4.000000,9.000000,2.000000
输入参数
filename
— 要写入的文件的名称
字符向量 | 字符串
要写入的文件的名称,指定为字符向量或字符串。
示例: 'myFile.txt'
或 "myFile.txt"
数据类型: char
| string
M
— 要写入的数值数据
矩阵 | 数值元胞数组
要写入的数值数据,指定为矩阵或数值元胞数组(每个元胞分配一个值)。
示例: [1,2,3;4,5,6]
示例: {1,2,3;4,5,6}
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| logical
| cell
复数支持: 是
delimiter
— 用于分隔数组各元素的分隔符
','
(默认) | 字符向量 | 字符串
用于分隔数组元素的分隔符,指定为包含一个或多个控制序列字符的字符向量或字符串。使用 '\t'
可生成以制表符分隔的文件。
示例: ';'
或 ";"
示例: '\t'
或 "\t"
数据类型: char
| string
row
— 行偏移量
0 (默认) | 标量
行偏移量,指定为标量。行偏移量指示在写入数值数据前所跳过的行数。row
从 0 开始,因此 row = 0
指示 MATLAB® 从目标文件的第一行开始写入。跳过的行将用指定的分隔符填充。
col
— 列偏移量
0 (默认) | 标量
列偏移量,指定为标量。列偏移量指示在写入数值数据前所跳过的列数。col
从 0 开始,因此 col = 0
指示 MATLAB 从目标文件的第一列开始写入。跳过的列将用指定的分隔符分隔。
名称-值参数
将可选的参量对组指定为 Name1=Value1,...,NameN=ValueN
,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: dlmwrite('myFile.txt',M,'precision',4,'delimiter',' ')
写入数组 M
中的数值,带四位有效位数并使用空白字符分隔。
delimiter
— 用于分隔数组各元素的分隔符
','
(默认) | 字符向量 | 字符串
用于分隔数组元素的分隔符,指定为逗号分隔的对组,由 'delimiter'
和包含一个或多个控制序列字符的字符向量或字符串组成。使用 '\t'
可生成以制表符分隔的文件。
示例: 'delimiter',';'
或 'delimiter',";"
示例: 'delimiter','\t'
或 'delimiter',"\t"
数据类型: char
| string
roffset
— 行偏移量
0 (默认) | 标量
行偏移量,指定为包含 'roffset'
和标量、以逗号分隔的对组。行偏移量指示写入数值数据前所跳过的行数。这些行将用指定的分隔符填充。将新数据追加到现有文件时,新数据距现有数据的末尾有一定偏移。
行偏移量从 0 开始,因此 'roffset',0
指示 MATLAB 从目标文件的第一行开始写入(即默认值)。但是,当追加到文件时,'roffset',0
指示 MATLAB 从紧随现有数据后的第一行开始写入。
示例: 'roffset',2
coffset
— 列偏移量
0 (默认) | 标量
距目标文件左侧的列偏移量,指定为用逗号分隔的对组,由 'coffset'
和标量组成。列偏移量指示写入数值数据前所跳过的列数。这些列将用指定的分隔符分隔。
列偏移量从 0 开始,因此 'coffset',0
指示 MATLAB 从目标文件的第一列开始写入(即默认值)。
示例: 'coffset',1
precision
— 数值精度
5 (默认) | 标量 | C 样式格式设定符 | 字符向量
向文件写入数据时使用的数值精度,指定为用逗号分隔的对组,由 'precision'
和标量或以 %
开头的 C 样式格式设定符(例如 '%10.5f'
)组成。如果 precision
的值为标量,则其指示的是有效位数的个数。
示例: 'precision',3
示例: 'precision','%10.5f'
数据类型: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| char
newline
— 行终止符
'pc'
| 'unix'
行终止符,指定为逗号分隔的对组,由 'newline'
和使用回车符/换行符 (CR/LF
) 的 'pc'
或使用换行符 (LF
) 的 'unix'
所组成。
示例: 'newline','pc'
提示
dlmwrite
写入的文件可用电子表格程序读取。此外,如果您的系统安装了适用于 Windows® 的 Excel®,可以使用xlswrite
创建电子表格。
版本历史记录
在 R2006a 之前推出R2019a: 不推荐使用 dlmwrite
不推荐使用 dlmwrite
。请改用 writematrix
。目前没有删除 dlmwrite
的计划。
从 R2019a 开始,使用 writematrix
函数将矩阵写入带分隔符的文本文件。与 dlmwrite
函数相比,writematrix
函数具有更好的跨平台支持和性能。
下表显示了 dlmwrite
的典型用法,以及如何更新您的代码以改用 writematrix
。
不推荐 | 推荐 |
---|---|
dlmwrite('mydata.txt',M) | writematrix(M,'mydata.txt') |
另请参阅
writematrix
| dlmread
| xlswrite
| writetable
MATLAB 命令
您点击的链接对应于以下 MATLAB 命令:
请在 MATLAB 命令行窗口中直接输入以执行命令。Web 浏览器不支持 MATLAB 命令。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)