加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

matlab批量读取文件的两个不同的思路

(2017-11-26 19:17:13)
标签:

批量读取

matlab

datenum

datestr

分类: matlab
以一个例子总结一下批量读取文件的两个不同的思路,如下图所示

第一个方法,是根据文件的命名特征,可以发现文件前面的命名都是SALT.1440x720x50.,只有后面的时间在变,第一个文件的时间是19920102,第二个是19920105,后面都是加3天。这就涉及都是matlab时间处理函数了。
以下程序演示如何批量读取图中的19个nc文件(matlab时间处理函数参考了https://www.cnblogs.com/emanlee/archive/2011/12/19/2293234.html)

clc
str1='SALT.1440x720x50.';str3='.nc';
for i=0:19
days=datenum('1992-01-02');
str2=datestr(days+i*3,29); %第i个文件的时间
str2(5)=[];str2(7)=[];
name(i+1,:)=[str1,str2,str3]; %第i个文件的名字
end

name数组如下:

第二个方法更加简单粗暴,也更加普适,直接通过目录操作获取该目录下文件的名字
(参考http://blog.sina.com.cn/s/blog_836db8100102vsij.html)
file_path='My Passport\ECCO2\S\';
img_path_list=dir(strcat(file_path,'*.nc'))

img_path_list是一个结构体,存储了该目录下所有nc文件的信息,包括name,date,bytes等等
img_path_list(1).name 就是 'SALT.1440x720x50.19920102.nc'
img_path_list(2).name就是 'SALT.1440x720x50.19920105.nc'
其余类推

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有