关于完全保存数字和字符串值

时间:2011-11-30 04:07:08

标签: matlab

我有一个N行和2列的字符串矩阵。每个单元格存储一个字符串我有另一个N * 1向量,其中每个条目都是一个数值。

如何将这两个结构逐行保存到单个文本文件中。

换句话说,保存的文本文件的每一行由三个元素组成,前两个元素来自字符串矩阵的一行,第三个元素来自该矢量的相应行。

感谢。

1 个答案:

答案 0 :(得分:1)

如果我理解正确,那么假数据可以表示为:

% Both have N=2 rows
strMat1 = {'a','b';'c','d';};
strMat2 = {1;2};

如果您希望此数据的输出是文本文件:

ac1
bd2

然后你应该这样做:

txtOut = [];
if size(strMat1,1) == size(strMat2,1);
    for row = 1:size(strMat1,1)
        txtOut= [txtOut strMat1{:,row} num2str(strMat2{row}) '\n'];
    end
else
    disp('Size disagreement')
end

fid=fopen('textData.txt','wt');
fprintf(fid,txtOut)

检查向量以确保存在相同数量的行,然后创建一个txtOut字符串以传递给fprintf命令。

希望这有帮助!如果您希望输出的间隔不同,只需以' '的形式向后续行添加空格。