CFileFind

CFileFind是为另两类查找特殊服务器设计的MFC类的基类,CGopherFileFind在Gopher服务器上工作,CFtpFileFind在FTP服务器上工作,这些类为用户查找文件提供了一种无缝机

制,与服务器协议、文件类型、地点、本地机器或远程服务器无关。
以下代码将当前目录下的文件枚举出来并打印每个文件名:
CFileFind finder
BOOL bWorking = finder.FindFile("*.*");
while(bWorking)
{
    bWorking = finder.FindNextFile( );
    cout <<(LPCTSTR) finder.GetFileName( ) <<endl;
}
属性判断
GetLength获取找到文件的长度,以字节为单位
GetFileName获取找到文件的名字
GetFilePath找到文件的全路径
GetFileTitle获取找到文件的标题,标题不包括扩展内容
GetFileURL获取找到文件的URL,包括文件路径
GetRoot获取找到文件根目录
GetCreationTime获取文件创建时间
GetLastAccessTime获取文件最后一次打开的时间
GetLastWriteTime文件最后改变和存储的时间
MatchesMask指定要找的文件的属性
IsDots查看文件名是否是包含"."或"..",以表明它的确是一个目录
IsReadOnly文件是否是只读
IsDirectory文件是否是目录
IsCompressed文件是否是压缩
IsSystem文件是否是系统文件
IsHidden文件是否是隐藏
IsTemporary文件是否是临时的
IsNormal文件是否是常规的(无其它属性)
IsArchived文件是否是档案
判断一个文件夹是否为空

BOOL IsEmpty(CString filepath)
{
 CString fpath(filepath);
 if( fpath.Right(1) != "\\" )
  fpath.Append("\\");

 CFileFind cff;

 fpath.Append("*.*");
 BOOL bOK = cff.FindFile( fpath );
 while ( bOK )
 {
  bOK = cff.FindNextFile();
  //如果不是. .. 或者不是目录,那么就一定是文件;
  //是文件就返回失败,说明要检查的目录包括了文件
  if( !cff.IsDots())
  {
   return FALSE;
  }
 }
 return TRUE;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值