给定矩阵M的intiger数,整个过程的目的是将矩阵M保存到名为TM.txt的二进制文本文件中,而不是重新加载TM.txt文件来读取矩阵M并应用一些过程
M= [1 2 3 4 5;
4 5 6 7 8;
4 6 8 9 9;
8 9 7 6 4]
我确实使用以下方法将M矩阵保存到二进制文本文件中
fileID=fopen('Tm.txt','w');
fwrite(fileID,M);
fclose(fileID);
我使用以下命令重新加载文件:
fileID = fopen('Tm.txt');
M= fread(fileID);
但结果如下:
M =
1
5
6
7
8
4
5
6
7
8
4
6
8
9
9
8
9
7
6
4
任何想法?
答案 0 :(得分:0)
要保存数据,我会将其用作选项:
dlmwrite('TM.txt',M,'\t');
要从文本文件加载,有很多选项。其中之一:
importdata('TM.txt')
答案 1 :(得分:0)
使用fwrite将二进制数据写入文件,它不会创建文本文件。如果使用fwrite编写二进制文件,则需要使用fread进行二进制读取。
使用dlmwrite,如madbitloman所建议的那样写一个文本文件。 '\ t'分隔制表符所写的值。然后可以通过textscan读取它。
二进制文件占用较少的内存来存储您的值,但在文本编辑器中打开时不易理解。文本文件占用更多空间以保存相同的数字,但在文本编辑器中易于阅读。