我想读取文件夹中包含的所有wav文件,每个文件我都执行一个函数。这个函数的结果是一个数字。我想把几个结果保存在一个txt文件中。
这是我的代码:
dirMask = 'folder*.wav';
wavRoot = fileparts(dirMask);
Files=dir(dirMask);
x = [];
for k=1:length(Files)
FileNames = fullfile(wavRoot, Files(k).name)
nomi=FileNames;
[s,fs] = audioread(FileNames);
a = function(s, fs);
x=a;
end
fid = fopen('file.txt','wt');
fprintf(fid,'%fn',x);
fclose(fid);
此代码不起作用。我该怎么做?
我稍微重新安排了一下。我并不完全肯定最初的意图,但我认为这就是你试图实现的:
dirMask = 'folder*.wav';
Files = dir(dirMask);
fid = fopen('file.txt','wt');
for k=1:length(Files)
FileName = [ Files(k).folder '' Files(k).name ]
[s,fs] = audioread(FileName);
% functions named function is a bad idea as it is keyword protected
x = myFunction(s,fs);
fprintf(fid,'%fn',x);
end
fclose(fid);