如何将matlab中数据写入文件

我用matlab算出的数据,怎样写入到txt文件中啊,数据是double类型的矩阵;写入到txt文件中,用制表符分隔开就行了。我想在c语言中用这些数,由于不会matlab和c的混合编程,只能用这样的笨方法了,请会的指点指点
能不能给个例子啊,比如把一个3*3 的随机矩阵,每个元素用制表符分开,每行用回车分开,
保存成txt文件,给例子追加10分,谢谢!

%%方法1:基于save函数,结果为科学计数法
save('seis.txt','seis','-ascii', '-double');
%%方法2:基于dlmwrite函数, 去掉精度控制,速度会快很多
dlmwrite('seis.txt', seis, 'delimiter', '\t', 'precision', '%.2f');
%%方法3:基于fprint函数,通过循环读入,速度较慢
[MaxRow, MaxCol] = size(seis);
fid = fopen('data.txt', 'w');
for row = 1:MaxRow
for col = 1:MaxCol-1
fprintf(fid, '%15f\t', seis(row, col));
end
fprintf(fid, '%15f\n', seis(row, MaxCol));
end
fclose(fid);
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-02-24
读写txt文件使用的函数:

函数名 数据类型 定界符 函数说明
csvread 数字 逗号 读逗号定界的数值文件,返回数字矩阵
dlmread 数字 任何字符 读ASCII码定界的数值文件,返回数字矩阵
textread 字母和数字 任何字符 按指定格式读整个文本文件,返回多个变量
csvwrite 数字 逗号 写数字矩阵到逗号定界的数值文件
dlmwrite 数字 任何字符 写数字矩阵到ASCII码定界的数值文件
第2个回答  推荐于2018-03-07
a = rand(3, 3);
fid = fopen('data.txt', 'w');

[max_row, max_col] = size(a);

for row = 1:max_row
for col = 1:max_col-1
fprintf('%15g\t', a(row, col));
end
fprintf('%15g\n', a(row, max_col));
end

fclose(fid);本回答被提问者和网友采纳
第3个回答  2009-12-20
如果不要求用制表符分隔的话,用save就行,否则用fprintf
第4个回答  2019-10-09
读写txt文件使用的函数:
函数名
数据类型
定界符
函数说明
csvread
数字
逗号
读逗号定界的数值文件,返回数字矩阵
dlmread
数字
任何字符
读ASCII码定界的数值文件,返回数字矩阵
textread
字母和数字
任何字符
按指定格式读整个文本文件,返回多个变量
csvwrite
数字
逗号
写数字矩阵到逗号定界的数值文件
dlmwrite
数字
任何字符
写数字矩阵到ASCII码定界的数值文件
相似回答