您的位置:首页 > 编程语言

MFC编程实现新建文件夹

2016-04-26 14:12 411 查看
代码如下:

GetModuleFileName( NULL, strPath.GetBuffer(MAX_PATH), MAX_PATH ); //NULL 返回应用程序的全路径

strPath.ReleaseBuffer(); //清空缓冲区

strPath = strPath.Left(strPath.ReverseFind(_T('\\'))); //获取整个路径

str = strPath + "\\"+ sDate + "-" + sTime; //文件夹名称

CString csSubString;

while(-1 != str.Find("\\"))

{

int nPos = str.Find("\\");

csSubString += str.Left(nPos + 1);

str = str.Right(str.GetLength() - nPos -1);

CreateDirectory(csSubString,NULL);

}

csSubString += str;

CreateDirectory(csSubString,NULL); //创建子目录

以上来自百度转载;

以下转载自“一蓑烟雨任平生”:

创建文件路径(即确定文件夹是否存在和创建一个文件夹),常需要PathIsDirectory和CreateDirectory两个函数实现。

PathIsDirectory函数用于判断传入的路径是否已经存在,若存在则无需在调用CreateDirectory函数进行创建路径,否则则可以调用CreateDirectory函数创建一个路径

常用方式:

CString csPath(TEXT(“E:\\Path”));

if (!PathIsDirectory(路径))

{

CreateDirectory(csPath, 0);//不存在则创建

}

else //已经存在

***********//存在以后的处理

说明:

a. PathIsDirectory函数,用来判断路径是否存在,路径的一般格式E:\\**\\**,若是存在返回1,否则返回0

b. CreateDirectory函数,用来创建一个路径,接受两个参数,路径和安全属性,安全属性可选择0,若是创建成功则返回1,否则返回0;在创建时要保证当前路径下的每一级都是有效的,如路径若是E:\\S1\\S2\\S3,若是S1或S2不存在,则创建会失败;若是创建的文件夹存在,则CreateDirectory函数也不会在创建文件夹,也会返回0值,因而CreateDirectory函数在调用时只要没有创建文件夹,俊辉返回0值

c. 参照b中描述,若是想要创建多级文件夹,则应从最外层文件夹开始逐步创建文件夹

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明

http://www.blogbus.com/hx1987-logs/336863590.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: