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

有没有人在啊,想请问一下,matlab 数组怎样输出到txt文件里?

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

2024-09-14 11:32:52

在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);

因为矩阵比较大,可能要运行比较长的时间,请耐心等待
孤独儛埗

2024-09-14 17:26:22

在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);