2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000
2000 2000 2000 0 0 0 0 0 0 4 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 4 3 3 0 3 3 2000 2000
2000 2000 2000 0 4 4 9 44 31 4 0 0 2000 2000
2000 2000 2000 0 4 0 31 277 531 29 0 0 2000 2000
2000 2000 2000 0 0 4 7 0 3 10 0 3 2000 2000
2000 2000 2000 0 0 4 3 0 0 5 0 1 2000 2000
2000 2000 2000 0 0 0 0 0 0 3 1 1 2000 2000
2000 2000 2000 0 0 0 0 3 1 2 1 1 2000 2000
2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 4 0 4 0 0 0 2000 2000
2000 2000 2000 0 0 5 27 21 6 0 3 3 2000 2000
2000 2000 2000 0 3 31 274 316 25 1 1 1 2000 2000
2000 2000 2000 0 0 4 5 4 6 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 1 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 1 0 0 0 2000 2000
2000 2000 2000 0 0 0 1 0 0 0 0 0 2000 2000
2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 3 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 4 0 3 0 0 0 2000 2000
2000 2000 2000 0 0 3 3 64 6 0 3 0 2000 2000
2000 2000 2000 0 0 3 473 374 30 9 1 0 2000 2000
2000 2000 2000 0 4 3 4 2 10 3 2 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 1 1 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 1 1 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 2 1 2000 2000
2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 0 0 0 0 2000 2000
2000 2000 2000 0 0 0 3 0 3 0 0 0 2000 2000
2000 2000 2000 0 0 4 18 34 9 0 0 0 2000 2000
2000 2000 2000 0 0 6 251 344 17 2 0 0 2000 2000
2000 2000 2000 0 0 8 2 3 5 0 3 0 2000 2000
2000 2000 2000 0 0 0 0 0 4 0 2 0 2000 2000
2000 2000 2000 0 0 0 0 0 1 0 0 0 2000 2000
2000 2000 2000 0 0 0 0 0 1 0 0 0 2000 2000
2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000 2000
上面是我目前在MatLab中生成的表,但是当我尝试保存它时,它只是将它粘在一个长字符串中,当我需要将它保留在这种格式中时。此外,我需要将它们以这种格式用逗号分隔。
这是我试图用来保存它的代码片段。
new_fname = ['star_chip' '_' date '.txt'];
path1 = '\\pfile01thn\bbruffey$\My Documents\IDLtoMatlab\star_chips\';
fid = fopen([path1 new_fname], 'w');
fprintf(fid,'%d',star_block);
fclose(fid);
答案 0 :(得分:2)
这是你玩的另一种可能性。这并没有在那里得到逗号,如果你真的想要它们,我会试着让它在以后工作。
这假设您要保存的矩阵名为A
,而fid
是您打开要写入的文件的文件ID。
fid = fopen('filename path here', 'w');
for n = 1:size(A,1)
fprintf(fid, '%5d', A(n,:))
fprintf(fid, '\r\n')
end
%5d'
命令中的fprintf
为有符号整数的数据类型指定字段宽度为5。如果您真的想要,可以将d
替换为i
或u
。 d
和i
虽然相同。 u
只是未签名。如果您愿意,可以使用大量其他修饰符,只需查看帮助文件中的函数即可。
在记事本中查看时也会使用第二条fprintf
行。它会添加一个回车符和一个换行符,以便下一行向下碰撞,并在记事本(也需要回车)中这样做。
希望有所帮助!
有点凌乱(如在另一个循环中,eww = P)以我想到的方式得到逗号。
fid = fopen('filename path here', 'w');
for n = 1:size(A,1)
for m = 1:size(A,2)
fprintf(fid, '%5d', A(n,m));
fprintf(fid, ',');
end
fprintf(fid, '\r\n');
end
我不是使用这条路线的忠实粉丝,但它确实完成了工作。如果A
非常大,那么您可以在这里有效地浏览它的每个元素。
这反映了Thor留下的评论:
fid = fopen('filename path here', 'w');
for n = 1:size(A,1)
for m = 1:size(A,2)
fprintf(fid, '%5d,', A(n,m));
end
fprintf(fid, '\r\n');
end
答案 1 :(得分:1)
使用dlmwrite
函数,如果您希望将其存储为ASCII表,请使用:
dlmwrite(new_fname, int64(star_block), '\t')
答案 2 :(得分:1)
您可能需要查看
dlmwrite('output.txt', yourMatrix);
这是帮凶:
yourMatrix = dlmread('input.txt')
当然,您可能需要更多选项。输入help dlmwrite
或doc dlmwrite
以获取更多信息。