mkdir函数创建文件夹
C/C++创建和删除文件夹操作(包含多级)_c++删除文件夹和里面的文件-CSDN博客
首先,想创建一个D:\\3文件夹 (写成D:/3这样也可以)
char path[4096] = "D:\\3";
mkdir(path);
然后,想继续创建D:\\3\\44文件夹
char path[4096] = "D:\\3\\44";
mkdir(path);
那么直接这样写,可以创建出D:\\33\\44文件夹吗?
char path[4096] = "D:\\3\\44";
mkdir(path);
不可以!!!创建不出来!
如何判断一个文件是否存在呢?
char path[4096] = "D:/3/4";
mkdir(path);
if (access(path, 0) == -1) {//0表示检查文件的存在性
printf("不存在,创建一个\n");
}
结合,实现创造多级文件夹
char path[4096] = "D:/LPL/4/lll/123/";
printf("%s\n", path);
int len = strlen(path);
int _len = 0;
for (int i = 0; i < len; ++i)
{
if (path[i] == '/') {
_len++;
}
}
int* a = new int[_len];
memset(a, 0, sizeof(a));
for (int i = 0,b = 0; i < len; ++i)
{
if (path[i] == '/') {
a[b] = i;
b++;
}
}
for (int i = 0; i < _len; i++)
{
printf("%d\n", a[i]);
char p[4096];
strcpy(p, path);
p[a[i]] = '\0';
if (access(p, 0) == -1) {
printf("不存在,创建一个\n");
mkdir(p);
}
}