【转】实现新建多级目录(树形)linux-c语言
来源:互联网 发布:java调用c语言 编辑:程序博客网 时间:2024/05/29 09:44
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include <unistd.h>
#include<sys/stat.h>
int CreateDir(const char *sPathName);
int main() {
char *dir="/test1/test2/";
CreateDir(dir);
return 0;
}
int CreateDir(const char *sPathName) {
char DirName[256];
strcpy(DirName, sPathName);
int i, len = strlen(DirName);
if (DirName[len - 1] != '/')
strcat(DirName, "/");
len = strlen(DirName);
for (i = 1; i < len; i++) {
if (DirName[i] == '/') {
DirName[i] = 0;
/* 功 能: 确定文件的访问权限,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,
* 否则函数返回-1
用 法: int access(const char *filename, int amode); */
if (access(DirName, 0) != 0) {
/*int mkdir(const char *path)mkdir函数的第一个参数是目录名,第二个参数则指定了文件的模式
* 后面参数的值包括三位八进制,每一个数字指定不同用户对该文件的权限,第一个数字代表文件所有者的权限,
* 第二个数字代表指定组(group)的权限,第三个数字指定其他所有人的权限(public)。
其中,每一个数字包含三种权限:read,write,exec,他们权限值为4,2,1,
三个值想加就是某个用户对某个文件的权限!例如:如果允许自己有read,write ,exec,
本组人员有read,exec,其他人员仅有read 权限,则可以把mode设定为751*/
if (mkdir(DirName, 0755) == -1) {
perror("mkdir error");
return -1;
}
}
DirName[i] = '/';
}
}
return 0;
}
#include<stdlib.h>
#include<string.h>
#include <unistd.h>
#include<sys/stat.h>
int CreateDir(const char *sPathName);
int main() {
char *dir="/test1/test2/";
CreateDir(dir);
return 0;
}
int CreateDir(const char *sPathName) {
char DirName[256];
strcpy(DirName, sPathName);
int i, len = strlen(DirName);
if (DirName[len - 1] != '/')
strcat(DirName, "/");
len = strlen(DirName);
for (i = 1; i < len; i++) {
if (DirName[i] == '/') {
DirName[i] = 0;
/* 功 能: 确定文件的访问权限,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,
* 否则函数返回-1
用 法: int access(const char *filename, int amode); */
if (access(DirName, 0) != 0) {
/*int mkdir(const char *path)mkdir函数的第一个参数是目录名,第二个参数则指定了文件的模式
* 后面参数的值包括三位八进制,每一个数字指定不同用户对该文件的权限,第一个数字代表文件所有者的权限,
* 第二个数字代表指定组(group)的权限,第三个数字指定其他所有人的权限(public)。
其中,每一个数字包含三种权限:read,write,exec,他们权限值为4,2,1,
三个值想加就是某个用户对某个文件的权限!例如:如果允许自己有read,write ,exec,
本组人员有read,exec,其他人员仅有read 权限,则可以把mode设定为751*/
if (mkdir(DirName, 0755) == -1) {
perror("mkdir error");
return -1;
}
}
DirName[i] = '/';
}
}
return 0;
}
- 【转】实现新建多级目录(树形)linux-c语言
- linux下C语言创建多级目录
- linux c 创建多级目录接口实现
- c语言创建多级目录
- Linux下清空多级目录(C++)
- Linux C 创建多级目录
- Linux C 创建多级目录
- 新建多级目录
- Java新建多级目录
- 新建临时文件夹,新建多级目录
- 用C语言创建多级目录
- C语言 mkdir 创建多级目录
- JQuery,C#,sqlServer 实现无极限多级树形控件
- linux c 创建多级目录函数实现 支持绝对路径和相对路径
- linux下 目录到目录的复制 C语言实现
- 多级树形菜单的实现
- 多级树形菜单的实现
- ListView实现多级树形菜单
- Spring MVC @ResponseBody 返回中文乱码问题
- Java中对数字格式化
- 解决Ubuntu12.04DNS设置失败问题
- 变通一下,让WCF支持泛型方法
- 常量
- 【转】实现新建多级目录(树形)linux-c语言
- JVM内存分配机制学习笔记
- Prototype PTE
- [Linux Shell] vim editor quit without content leave on the screen
- 简单的英文变位词聚类算法
- linux里的chdir()
- 第一个中断驱动程序
- 类模板特化之经典(一)
- java调用oracle带有返回值的存储过程