1
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);
4

3 回答 3

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。如果你真的想 的话,你可以dior替换。并且是一样的。 只是未签名。如果您愿意,可以使用大量其他修饰符,只需查看帮助文件中的函数即可。udiu

在记事本中查看时也将使用第二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真的很大,那么您在这里有效地遍历了它的每个元素。


这反映了托尔留下的评论:

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
于 2012-07-31T17:55:52.007 回答
1

请改用该dlmwrite函数,如果您希望将其存储为 ASCII 表,请使用:

dlmwrite(new_fname, int64(star_block), '\t')
于 2012-07-30T20:59:03.593 回答
1

你可能想调查

dlmwrite('output.txt', yourMatrix);

它是同谋:

yourMatrix = dlmread('input.txt')

当然,您可能还需要更多选择。键入help dlmwritedoc dlmwrite了解更多信息。

于 2012-07-30T21:16:58.807 回答