MATLAB - 如何保存不同长度的向量

时间:2014-06-19 19:35:36

标签: matlab file vector

我创建了一个包含向量的文件,这些文件的元素之间可能有空格。

-77.4  1   0.17    260     88 1004.0 1006.5 
-77.3  1   0.17               1009.2 1011.8 

我使用 fprintf()函数逐行保存文件'myfile.txt'

好吧,当我使用 load('myfile.txt')命令加载文件时,我收到此错误消息“在线列数...必须与之前的行相同”

我该如何解决?也许以另一种方式保存行向量?怎么办?

谢谢

1 个答案:

答案 0 :(得分:1)

使用save命令作为@maxywb在评论中说明你会更好,但如果你发现自己的文本文件没有一致的列号,你可以解析文件逐行并将结果保存到单元格数组

fid = fopen('myFile.txt','r');
values = {};
count = 1;
tline = fgets(fid);
while ischar(tline)
    values{count} = textscan(tline,'%f','delimiter',', ');
    count = count+1;
    tline = fgets(fid);
end
fclose(fid)