MATLAB: Renaming files to easily read it in to matlab problematic

changedatafilenamerenametxt

Hello community,
i have a lot of files to rename, i want to do this because i want to read it into matlab with a loop and after that convert it into matrices etc….
The files are called this way
control(f) Jun 14, 2012 18-10-04.txt control(f) Jun 14, 2012 18-13-23.txt control(f) Jun 14, 2012 18-16-20.txt control(f) Jun 14, 2012 18-20-57.txt … and so on.
I solved a similar problem where the files are called control(f) 1.txt control(f) 2.txt … and so on.
with this code: b = 'control(f) '; f = '.txt'; … for i = 1 : 486 j = j+1; var_end = num2str (i); data_str_control = [b,var_end,f]; …
but i dont know how to handle the problem with the different times in the name of the file. The time in the file is not following a rule.
Thanks in advance,

Best Answer

Hi,
why renaming them? This is not needed. Use the dir command to get a struct array which contains also the filenames:
>> dir
. .. test.mat
>> files = dir
files =
3x1 struct array with fields:
name
date
bytes
isdir
datenum
>> for i=1:numel(files)
files(i).name
end
ans =
.
ans =
..
ans =
test.mat
You can use the isdir field of the struct to determine if the current element is really a file.
for i=1:numel(files)
if ~files(i).isdir
load(files(i).name) %or do whatever you like to do with that file
end
end