建立多級目錄

2021-09-12 08:50:45 字數 851 閱讀 6227

在unix平台下有乙個建立目錄的api介面 mkdir(),該函式使用比較簡單,但如果需要建立多級目錄,則操作起來就稍微麻煩些,也有一些公開的**實現了建立多級目錄的功能,而很多都是採用遞迴呼叫 mkdir() 建立目錄的方式。在 postfix **也有一段**用於建立多級目錄,它的優點是迭代方式建立多級目錄,而不是遞迴呼叫 mkdir(),於是乎acl作者將其改造了一下(主要增加了針對win32的支援),加入acl庫中。介面比較簡單,如下:

/**

* 功能: 建立多級目錄結構

* 如建立 "/tmp/dir1/dir2" (for unix) 或 "c:\\test\\test1\\test2" (for win32)

* @param path: 一級或多級目錄路徑

* @param perms: 建立許可權(如: 0755, 0777, 0644 ...)

* @return == 0: ok; == -1, err

*/acl_api int acl_make_dirs(const char *path, int perms);

該函式介面在unix、win32平台下完全一致,只是在win32平台下,其中的引數 perms 是無效的,此外,還有乙個差別就是在win32平台下各級目錄分隔符可以為 "/" 或 "\",而在unix平台下分隔符則只能為 "/"。

以下是乙個簡單的例子:

#include "lib_acl.h"

#include static void test_mkdirs(void)

else

}int main(int argc acl_unused, char *ar** acl_unused)

個人微博:

建立多級目錄

寫出乙個能建立多級目錄的php函式 21 寫出乙個能建立多級目錄的php函式。系統環境 windows linux 編譯環境 php5 php4 輸入引數 存放在in.txt,多個引數時空格分隔 引數1是乙個路徑,用 或者 分隔 例如 www b c d e d www b c d e var ww...

建立目錄及多級目錄

createdirectory 一次只能建立一級目錄,而且前級目錄需要判斷是否存在。用makesuredirectorypathexists 可以一次建立多級目錄,使用時注意 1 include link中加入imagehlp.lib 2 路徑名最後結尾要用 如要建立c aaa bbb ccc dd...

C 建立多級目錄

建立多級目錄 bool makedirectory cstring dd m arr.removeall for x1 0 x1 dd.getlength x1 if x1 dd.getlength 1 m arr.add tem findclose ffile for x1 1 x1 m arr....