2016-05-04 214 views
-2

我需要檢查Matlab工作文件夾中的wav文件是否存在。如果是這樣,我需要將文件加載到一個變量(在我的案例中的文件),我使用此代碼,但它不起作用。檢查wav文件是否存在於Matlab文件夾中

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

凡在此代碼,你認爲你如果測試該文件存在? – Suever

回答

0

,如果你想找到一個特定的.wav文件,或者只是任何.wav文件你不說......

如果你只是想知道,如果一個特定的文件(任何種)存在,使用存在()函數。否則

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

,只需搜索您需要使用目錄()文件:它返回值2,如果一個文件退出

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 
相關問題