创建多层目录

 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. Asp.net MVC的ViewData与ViewBag以及TemplateData的使用与区别

    ViewData ViewBag 它是Key/Value字典集合 它是dynamic类型对像 从Asp.net MVC 1 就有了 ASP.NET MVC3 才有 基于Asp.net 3.5 fram ...

  2. COGS732. [网络流24题] 试题库

    «问题描述:假设一个试题库中有n道试题.每道试题都标明了所属类别.同一道题可能有多个类别属性.现要从题库中抽取m 道题组成试卷.并要求试卷包含指定类型的试题.试设计一个满足要求的组卷算法.«编程任务: ...

  3. 【Beta】第七次任务发布

    PM #103 #85 日常管理&dev版宣传&新增报告管理后台. 后端 #103 报告管理后台后端实现,提供必要API接口及文档说明 验收:符合要求的接口及其说明文档 前端 #89 ...

  4. BZOJ2809: [Apio2012]dispatching

    传送门 主席树经典题. 首先把树搞出来,然后搞出来DFS序.然后离散化点权,在DFS序上建立主席树. 对于每个点对应的区间,查找对应的区间最大的点数即可. //BZOJ2809 //by Cydiat ...

  5. unity小地图技术方案总结

    技术方案 一:从顶视图获取实时小地图(优点实现快容易对地图进行放大缩小操作而且地图,缺点是不好对地图做出修改,只能在顶部加个另外的相机层来遮盖) 1.创建Redertexture并改名为smallma ...

  6. 旧版本APP被开发人员下架,新版本重新上传依然显示被下架

    新接了一个项目,这个项目在苹果商城上面的版本已经被原来另外一家公司的开发人员下架.我们重新设计.开发.上传,申请加急审核,终于完成手动发布.但是发布成功后,新版本提示:被开发人员下架.以前虽然迭代开发 ...

  7. 注解spring

    ================================================ 没有bean的话 也可以放到参数前面

  8. PostgreSQL数据库中的常见错误

    转载以作参考. 错误1 FATAL: connection limit exceeded for non-superusers 原因:非超级用户的连接数(max_connections - super ...

  9. mybatis中#{}与${}的差别(如何防止sql注入)

    默认情况下,使用#{}语法,MyBatis会产生PreparedStatement语句中,并且安全的设置PreparedStatement参数,这个过程中MyBatis会进行必要的安全检查和转义. # ...

  10. Jquery制作--焦点图左右轮播

    公司项目经常用到轮播焦点图,于是自己写了一个纯jq形式的横向轮播焦点图,可点击小圆点或者左右按钮进行切换,属于定宽类型.改成自适应宽度的也不难,将css里面的bannerCon宽度改为百分比,再在js ...