Clear Filters
Clear Filters

File Names inside a folder(x) and subfolders of(x)

4 views (last 30 days)
i want to find out all the files having (csv extension) within a folder (x) and the fileshaving (csv extension) within the subfolders of folder(x).
Also i want to save the output in a text file.

Accepted Answer

StefBu
StefBu on 5 Feb 2019
Here you go:
Path = 'C:\Users\' % wherever you want to search
searchPath = [Path ,'\**\*.csv']; % Search in folder and subfolders for *.csv
Files = dir(searchPath); % Find all .csv files
% Save to text file
fid = fopen('C:\Users\FoundFiles.txt','wt'); % create file
formatSpec= '%s\n' % new Line after String
for i = 1:size(Files,1) % write each string in for-loop
fprintf(fid,formatSpec, Files(i).name);
end
fclose(fid); % close file again
Greetings
Stefan
  2 Comments
karan goyal
karan goyal on 6 Feb 2019
it worked man.thank you so much .
the only thing which i would like to further take is that i want to see the folders name too in the text file and all the files in it and then loop out of that folder and then again write the next folder's name and the files in it.
what changes can i do in the code?
Image Analyst
Image Analyst on 6 Feb 2019
Not sure what you want. I'm making a couple of guesses.
To see anything IN the text files, you'll have to call fopen(), then fgetl(), and then fclose().
To split apart a full filename into folder, base filename with no extension, and extention, use fileparts():
[folder, baseFileNameNoExt, ext] = fileparts(fullFileName);
Not sure why you need to "loop out of that folder" (or even what that means exactly) and have another loop after it. Why can't you do everything about listing/printing filenames and folder names inside that main loop?

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 5 Feb 2019
See attached demo.

Community Treasure Hunt

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

Start Hunting!