创建多层目录

 BOOL CTestToolCtr::CreateFolder(CString strNewFolder)
{
/**********************************************************************
[Name ]
CreateFolder [Function ]
创建文件夹 [Param ]
CString strNewFolder 创建的目录 [Return ]
TRUE: 创建成功
FALSE:创建失败 [Remarks ]
***********************************************************************/
if (PathFileExists(strNewFolder))
{
return FALSE;
}
else
{
return MakeDir((LPCTSTR)strNewFolder);
}
return TRUE;
} BOOL CTestToolCtr::MakeDir(const char* szPath)
{
char copy_path[];
memset(copy_path, , sizeof(copy_path)); int len = ;
char *last_mozi = NULL;
char *mozi = NULL;
char d_buf[], dd_buf[];
memset(d_buf, , sizeof(d_buf));
memset(dd_buf, , sizeof(dd_buf)); sprintf_s(copy_path, sizeof(copy_path), szPath);
len = strlen(copy_path);
last_mozi = CharPrev(copy_path, &copy_path[len]); if (last_mozi == (&copy_path[len-]))
{
if (copy_path[len-] == '\\' || copy_path[len-] == '/')
{
copy_path[len-] = 0x00;
}
} CharPrev(copy_path, copy_path);
mozi = CharNext(copy_path);
while (*mozi != '\0')
{
if (*mozi == '\\' || *mozi == '/')
{
memset(d_buf, , sizeof(d_buf));
memcpy(d_buf, copy_path, mozi-copy_path);
sprintf_s(dd_buf, sizeof(d_buf), "%s", d_buf);
if (!PathFileExists(dd_buf))
{
if (!CreateDirectory(dd_buf, NULL))
{
return FALSE;
}
}
}
mozi = CharNext(copy_path);
}
sprintf_s(dd_buf,sizeof(copy_path), "%s", copy_path); if (!PathFileExists(dd_buf))
{
if (!CreateDirectory(dd_buf,NULL))
{
return FALSE;
}
}
return TRUE;
}

MFC 创建多层目录的更多相关文章

  1. nodejs创建多层目录

    1. fs.mkdir不能一次创建多层目录,必须先创建上层目录,再创建下层目录 //同步 fs.mkdirSync("./tmp/"); fs.mkdirSync("./ ...

  2. Java File类 mkdir 不能创建多层目录,如果是多层,可以调mkdirs

    public static void createDir(String destDirName) { File dir = new File(destDirName); if (!dir.exists ...

  3. Java File类 mkdir 不能创建多层目录

    File f = new File("/home/jp/Upload"); if ((!f.exists()) || (!f.isDirectory())) {boolean re ...

  4. [nodejs] 同步/异步创建多层目录

    背景 有时项目里需要同时创建多层目录的功能,但低版本的nodejs并没有提供快捷的api 尽管在v10.12.0版本 mkdir() 第二个参数支持recursive 参数,为true时能递归创建,但 ...

  5. python创建多层目录的方式

    将 os.mkdir 改成 os.makedirs(opDir) 哈.

  6. Java File文件操作 创建文件\目录,删除文件\目录

    Java手册 java.io 类 File java.lang.Object java.io.File 所有已实现的接口: Serializable, Comparable<File> p ...

  7. Node fs 创建多层文件夹

    一.dirname()方法 1. 获得路径当中最后一段文件或文件夹所在的路径.多次调用path.dirname将会逐层返回上级目录 var path=require("path") ...

  8. 根据CreateDirectory递归创建多级目录

    分为MFC下的和非MFC下的两种,MFC路径是CString类型的,非MFC的路径是wstring类型的. 下面是MFC下的创建目录: void __fastcall RecursiveDirecto ...

  9. C/C++创建多级目录

    常常需要在非MFC的环境下创建目录,尤其是多级目录,这里写了一个创建多级目录的子函数CreateDir,以后需要就可以直接拿来用了. #include <string> #include ...

随机推荐

  1. Beta版本冲刺第五天

    Aruba 408 409 410 428 429 431 完成任务: 数据库对于分类新建/删除的更新 调整图片再编辑界面的合适大小 调整常驻通知栏按钮的跳转逻辑 微调数据库 立会照片: 燃尽图: c ...

  2. Java时间类型转换

    String转Long Long long=new SimpleDateFormat("yyyyMMddHHmmss").parse(String).getTime(); Long ...

  3. 美团大众点评服务框架Pigeon

    服务框架Pigeon架构 • Pigeon提供jar包接入 ,线上运行在tomcat里 • Monitor-CAT ,负责调用链路分析.异常监控告警等 • 配置中心-Lion ,负责一些开关配置读取 ...

  4. POJ 2186 Popular Cows(Targin缩点)

    传送门 Popular Cows Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 31808   Accepted: 1292 ...

  5. Theano Inplace

    Theano Inplace inplace Computation computation that destroy their inputs as a side-effect. Example i ...

  6. Android Automotive开发之一《编译自己的SDK 》 // TOBEDONE

    自己动手编译最新Android源码及SDK : http://blog.csdn.net/dd864140130/article/details/51718187官方文档,怎样编译sdk : http ...

  7. Access-Control-Allow-Origin与跨域问题

    在某域名下使用Ajax向另一个域名下的页面请求数据,会遇到跨域问题.另一个域名必须在response中添加 Access-Control-Allow-Origin 的header,才能让前者成功拿到数 ...

  8. 源码包---linux软件安装与管理

    源代码推荐保存位置: /usr/local/src 软件安装位置: /usr/local 如何确定安装过程报错: 安装过程停止 并出现error / warning / no 的提示 ./config ...

  9. java中Map,List与Set的区别(转)

    Set,List,Map的区别 java集合的主要分为三种类型: Set(集) List(列表) Map(映射) 要深入理解集合首先要了解下我们熟悉的数组: 数组是大小固定的,并且同一个数组只能存放类 ...

  10. Uva 11732 strcmp() Anyone?

    strcmp() Anyone? Time Limit: 2000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu [Subm ...