matlab 数组怎样输出到txt文件里

我有一个1000*1000的数组 我想把其中的第1行到第99行的所有数值 还是按照矩阵的形式输出到txt文件中 然后加一行'water levle since 0 hours'. 然后开始读第100行到199行的所有数值 加一行'water levle since 1 hours'.... 以此类推 请问我应该怎样写code

在matlab中要将大规模的矩阵写入到txt文本中,可以用文件读写的方法,如下例:
fid=fopen('D:\data.txt','wt');%写入文件路径
[m,n]=size(p); %获取矩阵的大小,p为要输出的矩阵
for i=1:1:m
if mod(i,100)==0
fprintf(fid,'water levle since %d hours\n',i/100-1);
end
for j=1:1:n
if j==n %如果一行的个数达到n个则换行,否则空格
fprintf(fid,'%4.3f\n',p(i,j));
else
fprintf(fid,'%4.3f\t',p(i,j));
end
end
end
fclose(fid);

因为矩阵比较大,可能要运行比较长的时间,请耐心等待
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-07
在matlab中要将大规模的矩阵写入到txt文本中,可以用文件读写的方法,如下例:
fid=fopen('D:\data.txt','wt');%写入文件路径
[m,n]=size(p); %获取矩阵的大小,p为要输出的矩阵
for i=1:1:m
if mod(i,100)==0
fprintf(fid,'water levle since %d hours\n',i/100-1);
end
for j=1:1:n
if j==n %如果一行的个数达到n个则换行,否则空格
fprintf(fid,'%4.3f\n',p(i,j));
else
fprintf(fid,'%4.3f\t',p(i,j));
end
end
end
fclose(fid);