c语⾔创建⽂件夹cpp,c语⾔实现⽂件夹的创建和删除
参考:
>>>>>>>>>>>###
判断⽂件夹是否存在:
在windows环境下头⽂件为:
[cpp]  view plain
copy
#include
在linux环境下头⽂件为:
[cpp]  view plain
copy
八分裤
#include
[cpp]  view plain
copy
"code"class="cpp">intaccess(constchar* _Filename,int_AccessMode)
上述函数在windows和linux环境下均可使⽤
该函数功能为确定⽂件或⽂件夹的访问权限,如果指定的访问权限有效,则函数返回0,否则返回-1
Filename可以是⽂件路径,也可以是⽂件夹路径,可以使⽤绝对路径或相对路径
_AccessMode表⽰要验证的⽂件访问权限,有可读、可写、可执⾏以及是否存在四种权限,当Filename表⽰⽂件夹时仅能查询⽂件夹是否存在
_AccessMode:
头⽂件unistd.h中有如下定义:
[cpp]  view plain
copy
#define R_OK 4 /* Test for read permission. */拍一拍功能
#define W_OK 2 /* Test for write permission. */
#define X_OK 1 /* Test for execute permission. */
#define F_OK 0 /* Test for existence. */
具体含义如下:
R_OK 只判断是否有读权限
W_OK 只判断是否有写权限
X_OK 判断是否有执⾏权限
F_OK 只判断是否存在
在宏定义⾥⾯分别对应:
02 写权限
04 读权限
06 读和写权限
_AccessMode=00表⽰只判断是否存在
_AccessMode=02表⽰⽂件是否可执⾏
_AccessMode=04表⽰⽂件是否可写
_AccessMode=06表⽰⽂件是否可读
在windows环境下还可使⽤函数_access:
[cpp]  view plain
copy
int_access(constchar* _Filename,int_AccessMode)
>>>
创建新的⽂件夹:
windows环境下头⽂件为:
[cpp]  view plain
copy
#include
函数原型为:
[cpp]  view plain
copy
intmkdir(constchar*_Path)
该函数功能为建⽴⼀个新的⽬录,创建成功则返回0,否则返回-1 _Path:新建⽂件夹路径,可使⽤绝对路径,可也⽤相对路径windows环境下也可⽤函数_mkdir:
[cpp]  view plain
copy
_mkdir(constchar*_Path)
默认mode是0777,表⽰最⼤可能的访问权
Linux环境下头⽂件为:
[cpp]  view plain
copy
#include
#include
[cpp]  view plain
copy
迈克尔 杰克逊
intmkdir(constchar*pathname, mode_t mode);
该函数功能为创建⼀个新的⽬录,并指定它的执⾏权限。如果创建成功则返回0,否则,返回-1
S_IRWXU
00700权限,代表该⽂件所有者拥有读,写和执⾏操作的权限
S_IRUSR(S_IREAD)
00400权限,代表该⽂件所有者拥有可读的权限
S_IWUSR(S_IWRITE)
00200权限,代表该⽂件所有者拥有可写的权限
S_IXUSR(S_IEXEC)
00100权限,代表该⽂件所有者拥有执⾏的权限
S_IRWXG
00070权限,代表该⽂件⽤户组拥有读,写和执⾏操作的权限
S_IRGRP
00040权限,代表该⽂件⽤户组拥有可读的权限
S_IWGRP
00020权限,代表该⽂件⽤户组拥有可写的权限
S_IXGRP
00010权限,代表该⽂件⽤户组拥有执⾏的权限
S_IRWXO
00007权限,代表其他⽤户拥有读,写和执⾏操作的权限
S_IROTH
00004权限,代表其他⽤户拥有可读的权限
S_IWOTH
00002权限,代表其他⽤户拥有可写的权限
S_IXOTH
00001权限,代表其他⽤户拥有执⾏的权限
可叠加使⽤,如0755表⽰S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH。表⽰该⽂件所有者拥有读,写和执⾏操作权限去,该⽂件⽤户组拥有可读,可执⾏的权限,其他⽤户拥有可读,可执⾏的权限。
>>>>>>>>>####
删除⽂件夹:
windows环境下头⽂件:
[cpp]  view plain
copy
奚梦瑶 维多利亚的秘密#include
linux环境下头⽂件:
[cpp]  view plain
copy
古天乐弟弟#include
函数原型为:
[cpp]  view plain
copy
intrmdir(constchar*_Path)
函数功能是删除参数指定的⽂件夹,成功返回0,否则返回-1在windows环境下也可使⽤函数_rmdir
>>>>##
实现程序:
[cpp]  view plain
copy
intmain(void)
{
string dir="./hello";
if(access(dir.c_str(), 0) == -1)
{
cout
cout<
#ifdef WIN32
intflag=mkdir(dir.c_str());
#endif
#ifdef linux
intflag=mkdir(dir.c_str(), 0777);
#endif
if(flag == 0)
蔡少芬刘銮雄{
cout<
} else{
cout<
}
}
if(access(dir.c_str(), 0) == 0)
{
cout
cout<
intflag=rmdir(dir.c_str());
if(flag == 0)
{
cout<
} else{
cout<
}
}
//cout<
cout<
<();
return0;
}
函数名: mkdir 功 能: 建⽴⼀个⽬录(⽂件夹) ⽤ 法: int mkdir(char *pathname); 程序例: (在win-tc和Dev-c++下运⾏通过) #include #include //#include