Matlab:在文件txt中复制数组

Matlab: copy array in file txt

我想将数组的元素复制到文件 txt 中。我读取了数组 a 中 wav 文件的前 50 个样本,我想将 a 复制到文件 txt 中。这是我的代码:

[s,fs]=wavread('file.wav');
for k=1:50
    a=s(k)
end

fid = fopen('file.txt','wt');

fprintf(fid,'%f\n',a);
fclose(fid);

文件 txt 中的这段代码只有 a 的最后一个元素,而不是所有样本。

fprintf 可以处理矢量输入。所以你可以简单地用 a = s(1:50);:

替换循环
[s,fs]=wavread('file.wav');
a = s(1:50);
fid = fopen('file.txt','wt');
fprintf(fid,'%f\n',a);
fclose(fid);