vc判断文件夹是否存在,及创建一个文件夹

转载 2008年09月28日 15:34:00
在vc下判断一个文件夹是否存在,如果不存在则创建这个文件夹,代码如下:
  1. bool DirExist(const TCHAR  *pszDirName)   
  2. {   
  3.     WIN32_FIND_DATA   fileinfo;   
  4.     TCHAR   _szDir[_MAX_PATH];   
  5.     _tcscpy(_szDir,pszDirName);   
  6.     int nLen  =  _tcsclen(_szDir);   
  7.     if((_szDir[nLen-1] == '//') || (_szDir[nLen-1] == '/'))   
  8.     {   
  9.         _szDir[nLen-1] = '/0';   
  10.     }   
  11.     HANDLE hFind  = ::FindFirstFile(_szDir,&fileinfo);   
  12.     if(hFind == INVALID_HANDLE_VALUE)   
  13.     {   
  14.         return false;   
  15.     }   
  16.     if(fileinfo.dwFileAttributes == FILE_ATTRIBUTE_DIRECTORY)   
  17.     {   
  18.         ::FindClose(hFind);   
  19.         return true;   
  20.     }   
  21.     ::FindClose(hFind);   
  22.     return false;   
  23. }   
  24. bool CreateDir(const TCHAR  *pszDirName)   
  25. {   
  26.     bool bRet = false;   
  27.     TCHAR _szDir[_MAX_PATH];   
  28.     TCHAR _szTmp[_MAX_DIR];   
  29.     int nLen = 0;   
  30.     int idx;   
  31.     if((DirExist(pszDirName)) == true)   
  32.         return true;   
  33.     _tcscpy(_szDir,pszDirName);
  34.     nLen   =   _tcslen(_szDir);   
  35.     if(_szDir[nLen-1] == '//' || _szDir[nLen-1] == '/')   
  36.     {   
  37.         _szDir[nLen-1] = '/0';   
  38.     }   
  39.     nLen = _tcslen(_szDir);   
  40.     memset(_szTmp,0,_MAX_DIR);   
  41.     TCHAR _str[2];   
  42.     for(idx = 0;idx < nLen;idx++)   
  43.     {   
  44.         if(_szDir[idx] != '//')   
  45.         {   
  46.             _str[0] = _szDir[idx];   
  47.             _str[1] = 0;   
  48.             _tcscat(_szTmp,_str);   
  49.         }   
  50.         else   
  51.         {   
  52.             bRet = ::CreateDirectory(_szTmp,NULL);   
  53.             if(bRet)   
  54.             {   
  55.                 ::SetFileAttributes(_szTmp,FILE_ATTRIBUTE_NORMAL);   
  56.             }   
  57.             _str[0] = _szDir[idx];   
  58.             _str[1] = 0;   
  59.             _tcscat(_szTmp,_str);   
  60.         }   
  61.         if(idx == nLen-1)   
  62.         {   
  63.             bRet = ::CreateDirectory(_szTmp,NULL);   
  64.             if(bRet)   
  65.             {   
  66.                 ::SetFileAttributes(_szTmp,FILE_ATTRIBUTE_NORMAL);   
  67.             }   
  68.         }   
  69.     }   
  70.     if(DirExist(_szTmp))   
  71.         return   true;   
  72.     return   false
  73. }  

VC++ 判断文件或文件夹是否存在

在Windows应用项目中,几乎总会需要用到一些文件系统相关的函数,如:判断文件是否存在,判断文件夹是否为空,删除文件夹及其所有子项,计算文件夹的大小,等等。不知为何,Windows并未提供直接的AP...
  • u011269801
  • u011269801
  • 2017年05月12日 18:13
  • 416

bat批处理判断文件夹是否存在并创建文件夹

以下批处理在Xp及Windows Server2008 R2上测试可用 [plain] view plain copy  print? @echo off  ...
  • ahngzw77
  • ahngzw77
  • 2016年11月16日 15:42
  • 7556

bat批处理判断文件夹是否存在并创建文件夹

bat批处理判断文件夹是否存在并创建文件夹
  • wangdonghao137
  • wangdonghao137
  • 2015年03月02日 10:41
  • 12135

C/C++ 判断文件夹是否存在以及创建、删除文件夹 windows以及linux通用

参考: http://blog.csdn.net/tigerjibo/article/details/11712039 http://baike.baidu.com/subview/355/5900...
  • u012005313
  • u012005313
  • 2016年02月18日 20:49
  • 25515

Qt 判断文件或文件夹是否存在及创建文件夹

1. 判断文件夹是不是存在 参数说明: QString fullPath;//文件夹全路径 /*方法1*/ bool isDirExist(QString fullPath) {     ...
  • lusirking
  • lusirking
  • 2016年06月12日 11:13
  • 14467

判断路径文件夹是否存在,不存在创建

C/C++判断一个文件是否存在 1. bool isExistFile(const char *pszFileName){     FILE *fp = fopen(pszFileName,...
  • u012377333
  • u012377333
  • 2014年09月05日 11:53
  • 5216

C# 判断文件夹存在与否并创建文件夹

protected void Button1_Click(object sender, EventArgs e) { if (Directory.Exists(Serve...
  • wangzl1163
  • wangzl1163
  • 2016年05月11日 09:11
  • 1737

VC++判断文件或文件夹是否存在

VC++判断文件或文件夹是否存在在Windows应用项目中,几乎总会需要用到一些文件系统相关的函数,如:判断文件是否存在,判断文件夹是否为空,删除文件夹及其所有子项,计算文件夹的大小,等等。不知为何,...
  • u012494876
  • u012494876
  • 2016年04月20日 22:08
  • 13988

判断文件夹是否存在,及创建一个文件夹

判断指定位置是否存在已知名字的文件夹,若不存在,新建一个。VC 6.0下通过。 #include #include #include using namespace std; //判断一个...
  • zhangjiutian88
  • zhangjiutian88
  • 2013年01月07日 16:05
  • 1019

判断文件夹、文件是否存在、创建文件 c++ matlab

Matlab: 1. exist判断当前目录是否存在指定文件夹 例子1 if ~exist('Figure')     mkdir('Figure') % 若不存在,在当前目录中产生一个子目录‘Fi...
  • qing101hua
  • qing101hua
  • 2016年10月26日 09:47
  • 3129
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:vc判断文件夹是否存在,及创建一个文件夹
举报原因:
原因补充:

(最多只允许输入30个字)