检查Matlab文件夹中是否存在wav文件

时间:2016-05-04 22:47:16

标签: matlab

我需要检查Matlab工作文件夹中的wav文件是否存在。如果是这样,我需要将文件加载到变量(在我的情况下为文件),我使用此代码,但它不起作用。

      if strcmp(file,'\n')==0
          file='test.wav';           
      elseif findstr(file,'.')==''
          file=strcat(file,'.wav');
      end
      [TestWave,Fs] = audioread(file);

1 个答案:

答案 0 :(得分:0)

您没有说是否正在尝试查找特定的.WAV文件,或者只是找到任何.WAV文件......

如果您只想知道某个特定文件(任何类型)是否存在,请使用 exists()功能。如果文件退出,则返回值2:

myFileName = 'test.wav';
myDirectory = 'c:\temp';
filepath = fullfile(myFileName,myDirectory);
if exist(filepath,'file') == 2
    [TestWave,Fs] = audioread(file);
end

否则,只需使用 dir()

搜索您需要的文件
myDirectory = 'c:\temp';
wildcard = '*.wav';

theseFiles = dir(fullfile(myDirectory,wildcard));
for i = 1:length(theseFiles)
    thisFilePath = fullfile(myDirectory,theseFiles(i).name);
    [TestWave,Fs] = audioread(thisFilePath);    % Load this file

    % Do something with the loaded file...
end