c语言要创建文件目录,我介绍的是要通过"mkdir"这个函数,如有其他方法请交流,接下来我先介绍一下mkdir这个函数。
mkdir
函数原型:int mkdir(const char *pathname,mode_t mode);
作用:创建一个文件夹
库:direct.h
函数说明:mkdir()函数以mode方式创建一个以参数pathname文件命名的目录,mode定义新目录的权限(可以省略)
返回值:若目录创建成功,则返回0;否则返回-1,并将错误记录到全局变量errno中。
方法一:逐层新建文件夹
#include<stdio.h>
#include<direct.h>
#include<stdlib.h>
#include<io.h>
int mkdir(char *dir)
{
int i,len;
char str[100];
strcpy(str,dir);//缓存文件路径
len = strlen(str);
for(i = 0; i<len; i++)
{
if( str[i] == '\\')
{str[i] = '\0';
if(access(str,0) != 0)
mkdir(str);
str[i] ='\\';
}
}
if( len > 0 && access(str ,0)!=0) //检测是否创建成功
mkdir(str);
return 0;
}
int main()
{
mkdir("H:\\A\\B\\C\\D");
return 0;
}
方法二:mkdir+system
//这是一个可以一次创建多级目录的程序
#include<stdio.h>
#include<stdlib.h>
#include<direct.h>
int main()
{
char cm[1000];
char filesavepath[]="H:\\a\\b\\c\\d";
sprintf(cm,"mkdir %s",filesavepath); // 组成命令
system(cm); // 建路径
}
欢迎各位留言交流!