Individual files reading
3 views (last 30 days)
Show older comments
I have some daily data , files shows the details of year, month and day GSAT20090101_xyz.h5, GSAT20090102_xyz.h5 ...31 , same for month 02 also.
I wanted to read only one month file from this folder e.g jan 1-31, 1-28 ...
I am new in matlab, so somebody please tell how i can set for loop for this problem.
0 Comments
Accepted Answer
Arturo Moncada-Torres
on 18 Aug 2011
On a quick thought, it would be something like this:
files = dir('*.h5'); % Find the files with extension .h5 in the current directory.
month = '01'; % Month must be a string ('01' for January, '02' for February, etc.).
for ii = 1:numel(files)
nameFound = strfind(files(ii).name, ['GSAT2009' month]);
if nameFound
fid = fopen(files(ii).name);
% Do whatever you need with the files here.
fclose(fid);
end
end
EDIT
If you want to read year information separately, you can use the following, which is very similar:
files = dir('*.h5'); % Find the files with extension .h5 in the current directory.
month = '01'; % Month must be a string ('01' for January, '02' for February, etc.).
year = '2009'; % Year must be a string.
NOTE: If month or year are not strings and are numeric (double), you can use the function num2str.
for ii = 1:numel(files)
nameFound = strfind(files(ii).name, ['GSAT' year month]);
if nameFound
fid = fopen(files(ii).name);
% Do whatever you need with the files here.
fclose(fid);
end
end
Try it and let me know if it works.
3 Comments
More Answers (0)
See Also
Categories
Find more on Dates and Time in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!