Individual files reading

3 次查看(过去 30 天)
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.

采纳的回答

Arturo Moncada-Torres
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 个评论
Uday
Uday 2011-8-19
This codes works for only one month, like month='1'but if I want to read data for all month than that string does not work. (month-'1''2'...; )
could you please tell me how I can fix this issue ?
I would like to read all days files those are available for that particular month and it should select next month (e.g jan 1-31 the it should go to feb 1-28 , march ....)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Dates and Time 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by