image thumbnail

Folders tree files list

version 1.1.0.0 (8.63 KB) by Nikolay S.
Returns cell array of file names located under input folders.

1.3K Downloads

Updated 22 Apr 2013

View License

This functions goal is to return a cell array of names of files located under user defined folders. The input should be a cell array of parent directories. The function also supports input of a single directory name string. Absolute file path is used, replacing the relative path.
The user can choose the files or directories including files using the OS explorer- by enabling the 'flagGUI' input.
I was somewhat un-pleased from the multiple similar function were proposed and submitted to Matlab File exchange (no offence, with greatest respect to the authors and their work):
- http://www.mathworks.com/matlabcentral/fileexchange/index?term=tag%3A%22directories%22&sort=downloads_desc
- http://www.mathworks.com/matlabcentral/fileexchange/index?term=tag%3A%22files%22&sort=downloads_desc
- http://www.mathworks.com/matlabcentral/fileexchange/index?term=tag%3A%22dir%22&sort=downloads_desc
During my first programming course I was taught that code using recursion is a bad code. Recursive code is hard to understand, develop and maintain.
Changing folders or Matlab path during run time is also a bad thing- it takes more time and can cause unwanted effects in Matlab environment.
Therefore I've written my implementation, witch, I believe, has some advantages over methods proposed earlier:
- It is not recursive but iterative.
- It does not changes the current folder (not using cd command).
- It uses "ls" function, which is supposed to be faster then "dir" function.
- According to some measurements I've made it runs faster the the alternatives.
- I also believe is is clearly written, so it should be easy to understand and maintain.
- It supports wildCards.

Cite As

Nikolay S. (2021). Folders tree files list (https://www.mathworks.com/matlabcentral/fileexchange/41170-folders-tree-files-list), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!