how to get the specific model name/ extention(.mdl) from a folder which has count less depths?

3 visualizaciones (últimos 30 días)
i would like to extract the *.sldd and *.h files from the folder which has multiple levels. example: folder X has X1,X2folders, X1 has Y1, Y2 and Y3 folders and Y2 has Z1,Z2 folders. Z2 folder contains some test.h file and Z1 contains some data.sldd
is there API to sort out the required file names based on extention?

Respuesta aceptada

Jordan Ross
Jordan Ross el 21 de Sept. de 2016
Hi Sudhakar,
In MATLAB R2016b you can use the "dir" function as follows:
>> list = [dir('**/*.sldd'); dir('**/*.h')]
The variable "list" will then contain a vector of structures which correspond to the files with the extensions .SLDD and .H.
For more information about the "dir" function see: http://www.mathworks.com/help/matlab/ref/dir.html
  1 comentario
Sudhakar Akki
Sudhakar Akki el 22 de Sept. de 2016
Thanks for answer. currently i'm using R2014a. for sorting out the *.sldd files i made a script.
function [ FList_sldd ] = ReadDDNames(DataFolder) DirContents=dir(DataFolder); FList_sldd=[];
if(strcmpi(computer,'PCWIN') strcmpi(computer,'PCWIN64')) NameSeperator='\'; elseif(strcmpi(computer,'GLNX86') strcmpi(computer,'GLNXA86')) NameSeperator='/'; end
extList={'.sldd'}; for i=1:numel(DirContents) if(~(strcmpi(DirContents(i).name,'.') strcmpi(DirContents(i).name,'..'))) if(~DirContents(i).isdir) extension=DirContents(i).name(end-4:end); if(numel(find(strcmpi(extension,extList)))~=0) FList_sldd=cat(1,FList_sldd,{[DataFolder,NameSeperator,DirContents(i).name]}); end else getlist=ReadDDNames([DataFolder,NameSeperator,DirContents(i).name]); FList_sldd=cat(1,FList_sldd,getlist); end end end
end

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre File Operations en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by