MATLAB Answers

Mukund
0

How to segregate folders level wise and list the files folderwise

Asked by Mukund
on 5 Oct 2019
Latest activity Answered by Image Analyst
on 5 Oct 2019
In Matlab 2016 onwards, commands like dir(**/*.extension) is available. However, it lists all the file list with its Path. The task afterward is critical. 1. Obtain Subfolders 2. Obtain Files and Subsubfolders with their level. 3. Extract the directory name and file name in cell array.
Are there modified ways or shortcut commands to obtain this info.

  0 Comments

Sign in to comment.

1 Answer

Answer by Image Analyst
on 5 Oct 2019
 Accepted Answer

There is a .isdir property on the returned files that you can check. In addition there is a function called isfolder() that you can also use. Try this:
files = dir('**/*.*')
areFolders = [files.isdir]
folders = files(areFolders)
dotOrDotDot = strcmp('.', {folders.name}) | strcmp('..', {folders.name})
folders = folders(~dotOrDotDot)
folderNames = {folders.name}

  0 Comments

Sign in to comment.