我有一个矩阵(输入)并希望将其导出为文本文件(输出),因此,我在 matlab 中使用以下代码:
save('out.txt', 'input', '-ASCII');
我的问题是如何为其标题插入例如 3 行(如下)?我不想在另一个程序中打开 output.txt 文件,因为 output.txt 的大小非常大,没有可用的软件可以打开它。因此,我想直接在matlab中执行此操作。
These data set are...
It is created by
2013
我有一个矩阵(输入)并希望将其导出为文本文件(输出),因此,我在 matlab 中使用以下代码:
save('out.txt', 'input', '-ASCII');
我的问题是如何为其标题插入例如 3 行(如下)?我不想在另一个程序中打开 output.txt 文件,因为 output.txt 的大小非常大,没有可用的软件可以打开它。因此,我想直接在matlab中执行此操作。
These data set are...
It is created by
2013
我认为你不能只使用save
函数来做到这一点。快速,我可以看到两个可能有用的选项。
首先。创建一个带有标题的文件,然后使用save
选项-append
:
input = rand(5);
header = ['These data set are It is created by 2013'];
fileID = fopen('out.txt','w');
fprintf(fileID,'%s\n', header);
fclose(fileID);
save('out.txt', 'input', '-ASCII', '-append');
第二。不要使用保存,而是手动使用fprintf
来编写所有内容:
input = rand(5);
header = ['These data set are It is created by 2013'];
fileID = fopen('out.txt','w');
fprintf(fileID,'%s\n', header);
fprintf(fileID,[repmat('%f ', [1, size(input, 2)]),'\n'], input);
fclose(fileID);
如果你想要多行标题,你可以这样做:
header = ['These data set are ...\nIt is created by\n2013'];
fileID = fopen('out.txt','w');
fprintf(fileID, [header, '\n']);
fprintf(fileID,[repmat('%f ', [1, size(input, 2)]),'\n'], input);
fclose(fileID);