Save the listing of files in a directory to a textfile

5 views (last 30 days)
Dear experts,
Im relative new to matlab. I want to save the contains of a directory into a textfile. In linux this is quite easy and goes like this:
ls > filenames.txt
I have the following code already (which works):
runsDir = dir(fullfile(sourceDir,geneDir,dataDir,'/')); %# Get the data for the current directory
dirIndex = [runsDir.isdir]; %# Find the index for directories
fileList = {runsDir(~dirIndex).name}';
Now I have a construct cell array in my workspace (containing string variables with the names of the files). Now I want to save this into a text file. I searched the forum but did not find anything that worked for me.
Many thanks in advance!
Marty

Accepted Answer

Sara
Sara on 29 Apr 2014
fid = fopen('myfile.txt','w');
for i = 1:length(fileList)
fprintf(fid,'%s\n',fileList{i});
end
fclose(fid);
  2 Comments
Sean de Wolski
Sean de Wolski on 29 Apr 2014
If you really want to get fancy, the for-loop can be skipped with comma-separated list expansion of cell arrays.
fprintf('%s\n',fileList{:})
Marty Dutch
Marty Dutch on 29 Apr 2014
thanks! your suggestions worked, although you forgot to put "fid" in the code (see below).
fprintf(fid,'%s\n',fileList{:});

Sign in to comment.

More Answers (1)

NARESH BILONIYA
NARESH BILONIYA on 27 Oct 2017
what is fileList here

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!