【发布时间】:2010-02-13 08:11:36
【问题描述】:
如何使用 C 代码创建目录(除了 fork 和使用 mkdir 的方法)?有没有像dirent.h这样的东西? dirent.h 只允许读取目录。 (不使用外部库)
【问题讨论】:
-
我想同时了解 C 和 C++
如何使用 C 代码创建目录(除了 fork 和使用 mkdir 的方法)?有没有像dirent.h这样的东西? dirent.h 只允许读取目录。 (不使用外部库)
【问题讨论】:
#include <sys/stat.h>
#include <sys/types.h>
int mkdir(const char *pathname, mode_t mode);
【讨论】:
如果您可以使用 C++(根据所选标签的建议)和 boost 库,Boost 文件系统可以帮助您使用 create_directory 函数。
如果您不想让项目中的所有 boost 库都可用,您可以下载一个名为 bcp 的工具来仅提取您需要的子集,在您的情况下是 boost 文件系统及其依赖项。
【讨论】:
致电mkdir(2)。
【讨论】:
随着c++17 的出现,我们有一个Filesystem library 提供用于操作文件和目录的工具。创建目录可以使用std::filesystem::create_directory。
例子:
#include <filesystem>
std::filesystem::create_directory("newdir");
【讨论】: