2011-10-25 123 views

回答

3

事情是這樣的:

function outNames = GetNames() 
dirList = dir('c:'); 
names = {dirList.name}; 
outNames = {}; 
for i=1:numel(names) 
    name = names{i}; 
    if ~isequal(name,'.') && ~isequal(name,'..') 
     [~,name] = fileparts(names{i}); 
     outNames{end+1} = name; 
    end 
end  
end 
+0

的errer計提壞賬:::解析錯誤{〜 } matlab語法錯誤 – qwe

+0

Oww ..我正在使用比你更新的Matlab。只需將「〜」替換爲「未使用」的字符串即可。 –

+0

但你必須添加ü要到第二行::進一步擴展 dirList = DIR:(「C \\ *分機。」) – qwe

0

使用dir命令獲取目錄內容,使用fileparts函數剝離擴展名。

+0

嘗試寫一個簡單的代碼,而試圖驗證碼 – qwe

0

讓我簡化的答案更是:

%# list all .txt files in a folder, and get filenames without extensions 
BASE_DIR = 'C:\path\to\directory'; 
files = dir(fullfile(BASE_DIR,'*.txt')); 
[~,files] = cellfun(@fileparts, {files.name}, 'UniformOutput',false) 
+0

通過這種方式,您將獲得'。'和'..',這顯然是你不想要的東西 –

+0

@Andrey:實際上它不會,如果仔細觀察,這隻會返回帶有.txt擴展名的文件名 – Amro

相關問題