• 创建文件目录


    创建文件目录

    主要在windows系统下测试使用

    1,使用CreateDirectory

    创建单级目录

    CreateDirectory("C:\abc", NULL);//使用绝对路径创建文件夹
     
    递归创建多级目录
    int index, start = 0;
    CString strTmp;
    CString strPath = "E:\aaa\bbb\ccc\ddd";

    while ( (index = strPath.Find('\', start)) != -1) {
            strTmp = strPath.Left(index);

            CreateDirectory(strTmp, NULL);

            start = index + 1;      
    }
     
    2,使用MakeSureDirectoryPathExists

    函数功能描述:该函数创建一个从根目录开始的完整的指定路径.

    函数原型:
     BOOL MakeSureDirectoryPathExists(PCSTR DirPath);

    参数:
    DirPath [in] : 指向一个以NULL结尾的包含正确的指定的路径名,如果路径名的结尾部分不是文件名而是文件夹,那么要以'/'为结束符.
    返回值:函数成功返回TRUE; 函数失败返回FALSE;要获得具体错误信息用GetLastError();
    备注: 每一级目录如果不存在就创建它,如果只有一些目录被创建了,那么函数返回FALSE.

    示例代码段:
    在用MakeSureDirectoryPathExists前,要在Project->Settings...->Link->/Object/library modules中加入imagehlp.lib.

    具体函数如下:
    {
      BOOL bRet=MakeSureDirectoryPathExists("f://Directory1//Directory2//Directory3//");
      //创建目录,要注意结尾"//",否则会失败.
      ASSERT(bRet);
      bRet=MakeSureDirectoryPathExists("f://Directory1//Directory2//Directory3");
      //创建目录,但不创建Directory3,因为没有'//'结尾.
        ASSERT(bRet);
          bRet=MakeSureDirectoryPathExists("f://Directory1//Directory2//Directory3//test.txt");
          //创建目录,但不创建文件,可以不用'//'结尾.
          ASSERT(bRet);
    }
    注意包含头文件及相应库文件
    头文件: 在Dbghelp.h中定义.
    静态库: Dbghelp.lib.

    3,使用windows下的bat脚本函数 mkdir
    system("mkdir  "E:\aaa\bbb\ccc\ddd"");
  • 相关阅读:
    meanshift聚类的实现
    birch聚类算法
    DBSCAN聚类算法的实现
    discrete adaboost的C++实现
    kd-tree的实现
    红黑树的实现——插入
    24位位图转8位灰度图
    将RGB数据写入BMP位图文件
    splay树的实现
    AVL树的实现
  • 原文地址:https://www.cnblogs.com/widget90/p/5606413.html
Copyright © 2020-2023  润新知