Labfans是一个针对大学生、工程师和科研工作者的技术社区。 | 论坛首页 | 联系我们(Contact Us) |
![]() |
|
![]() |
#1 |
初级会员
注册日期: 2010-05-13
年龄: 45
帖子: 1
声望力: 0 ![]() |
![]()
作为测试,我想输出所有文件夹内的文件名但是出现错误,读取文件时发生错误,说文件不存在。但是当不需要读文件,只是计算所有文件夹里的文件数量时,程序是正确的,是不是 fid = fopen([r,filename(j).name],'r') 写的不对?
我的文件夹都是以日期命名的。 fileall=[] a1 = datenum('2007-07-01'); %2007/07/01 a2 = datenum('2007-12-31'); %2008/12/31 for i = a1:1:a2 k = datestr(i,'yyyymmdd'); r = sprintf('E:\\Nimrod\\%s\\%s\\%s',k(1:4),k(5:6),k(7:8)); filename=dir([r '\*.dat']) flength=length(filename) for j=1:flength fid = fopen([r,filename(j).name],'r'); if fid == -1 error('File does not exists'); end DateMy_Year=filename(j).name(16:19); DateMy_Month=filename(j).name(20:21); DateMy_Day=filename(j).name(22:23); DateMy_Hour=filename(j).name(25:26); DateMy_Minute=filename(j).name(27:28); DateNow=[DateMy_Year ' ' DateMy_Month ' ' DateMy_Day ' ' DateMy_Hour ' ' DateMy_Minute]; DateAdd=str2num(DateNow); fileall=[fileall;DateAdd] end end save fileall.txt fileall -ascii |
![]() |
![]() |