Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/matlab/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在matlab中读取多个wav文件_Matlab_Audio Processing - Fatal编程技术网

在matlab中读取多个wav文件

在matlab中读取多个wav文件,matlab,audio-processing,Matlab,Audio Processing,我想在一个文件夹中逐个读取多个wav文件。我是这样写的,但它给出了“无效的Wave文件。原因:无法打开文件。”错误。但当我把t改成数字时,它就起作用了 for t=1:10 myFile=['path\','t.wav']; [ speech, fs] = wavread( myFile); end 您需要将变量t转换为字符串。您要求打开文件'path\t.wav',该文件可能不存在。由于变量t是一个整数,因此可以使用将其转换为字符串: myFile = ['path\' in

我想在一个文件夹中逐个读取多个wav文件。我是这样写的,但它给出了“无效的Wave文件。原因:无法打开文件。”错误。但当我把t改成数字时,它就起作用了

for t=1:10
    myFile=['path\','t.wav'];
    [ speech, fs] = wavread( myFile);
end

您需要将变量
t
转换为字符串。您要求打开文件
'path\t.wav'
,该文件可能不存在。由于变量
t
是一个整数,因此可以使用将其转换为字符串:

myFile = ['path\' int2str(t) '.wav'];

只有字符串可以与其他字符串连接。当然,如果您的文件少于10个,那么您将遇到另一个问题…

您可以使用特殊的print f命令:sprintf();将此字符串分配给myFile

myFile = sprintf('path\%d.wav',t);
sprintf在MATLAB中工作,就像在C环境中一样