加载中…
个人资料
岩岩爸
岩岩爸
  • 博客等级:
  • 博客积分:0
  • 博客访问:53,759
  • 关注人气:9
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

VC隐藏文件和判断文件是否存在

(2008-10-13 17:25:27)
标签:

it

分类: C++/C
一:隐藏文件。
    1.WinExec函数。
      该函数执行一个cmd命令,如修改
      C:\\Documents and Settings\\eMLab\\Application Data\\test.txt
      文件属性为隐藏可以:
      CString strFileName =
       "C:\\Documents and Settings\\eMLab\\Application Data\\test.txt";
      CString strCmd = "attrib +h" + strFileName;
      WinExec(strCmd,0);
      attrib修改文件属性,+h表示给文件加上隐藏属性。
    2.SetFileAttributes函数
      原型:BOOL SetFileAttributes(LPCTSTR   lpFileName,   //file name
                                   WORD   dwFileAttributes //file attribute
                                  );    
      如:
      SetFileAttributes(strFileName,FILE_ATTRIBUTE_HIDDEN);
   FILE_ATTRIBUTE_HIDDEN就表示隐藏属性。 
    3.CFile和CFileStatus类
      CFile的静态函数GetStatus可以读取文件状态
      CFile的静态函数SetStatus可以修改文件状态
      如:
   FileStatus fs;  
      CFile::GetStatus(strFileName,fs);  
      fs.m_attribute = CFile::hidden;          //set hidden attribute
      CFile::SetStatus(strFileName,fs); 
二:判断文件是否存在。
  1.access函数,在io.h中。
   原型:int access(const char *filename, int amode);
      参数amode(好象有5种模式)
      0:检查文件是否存在        
      1:检查文件是否可运行        
      2:检查文件是否可写访问    
      4:检查文件是否可读访问  
      还有一种,由于MSDN突然坏了,暂时保留着
      if ( access(file,0) )
      {
      //文件不存在
      }
    2.CFile和CFileStatus类
      CFile的静态函数GetStatus如果返回FALSE表示文件不存在
      CFileStatus fs;  
      if ( !CFile::GetStatus(strFileName,fs) )
      {
       //文件不存在
      }

     3.CFileFind类
       直接使用该类的成员函数FindFile进行判断
       CFileFind ff;  
       if ( !ff.FindFile(strFileName) )  
       {
       //文件不存在  
       }
       ff.Close();
     4.PathFileExists方法
       这是一个API方法,直接调用即可

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

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

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

    新浪公司 版权所有