创建多级路径
来源:互联网 发布:上瘾网络剧百度云资源 编辑:程序博客网 时间:2024/06/05 05:37
由于linux只有创建单级路径的库函数(如果有创建多级路径的库函数,麻烦通知在下),参考了网上的一些代码,觉得它们都有不足之处,遂整合完善之,以示下文,如有还有不足之处,还请指正,多谢合作!
#include <stdio.h>#include <unistd.h>#include <errno.h>#include <string.h>#include <stdlib.h>int mk_multy_dir(const char *muldir);int main(){ char *dir = "./hello/log/"; //在当前目录下再建一个两级目录. mk_multy_dir(dir); return 0;}/* * 功能:创建多级路径,只创建文件的路径,并不包含创建文件. * 若路径已存在则直接返回,否则一级一级地创建出多级路径。 * 参数:muldir,要创建的多级目录字符串,可以是相对路径或绝对路径。 * 返回值:成功返回0,失败为-1.*/int mk_multy_dir(const char *muldir){ int i=0,len=0; char dirstr[1024]={0}; if( NULL == muldir ){ return -1; } if (access(muldir, F_OK)==0) { return 0; } memset(dirstr, 0, sizeof(dirstr)); strcpy(dirstr, muldir); len = strlen(dirstr); if (dirstr[len-1] != '/') { strcat(dirstr, "/"); len++; } if (dirstr[0] == '/') { i++; } while (i<len) { if (dirstr[i] == '/') { dirstr[i] = '\0'; //判断此目录是否存在,不存在则创建 if (access(dirstr, F_OK) != 0) { if (mkdir(dirstr, 0775)!=0) { return -1; } } dirstr[i]='/'; } i++; } return 0;}
结果:
在当前目录下再建一个两级目录:./hello/log/
- 创建多级路径
- 根据路径创建文件夹(多级创建)
- 使用wcstok_s函数分割路径, 创建多级目录
- Java 判断多级路径是否存在,不存在就创建
- vb 多级路径创建,读取文件或文件夹[vb类写法]
- linux c 创建多级目录函数实现 支持绝对路径和相对路径
- 创建多级目录
- php创建多级目录
- SHCreateDirectoryEx 创建多级目录
- VC创建多级目录
- C++ 创建多级目录
- 递归创建多级目录
- 创建多级目录
- 创建多级文件夹
- 创建多级目录
- vb 创建多级文件夹
- 创建多级目录
- VB创建多级目录
- 语文练习
- Android内存泄漏就这样产生了
- C#实现字符串相似度比较[Levenshtein Distance算法]
- Mule,目前综合状态最良好的开源ESB方案引文
- ClassicMenu Indicator Gnome经典菜单程序
- 创建多级路径
- 通杀IIS7.0畸形解析0day漏洞
- CSS cursor鼠标样式一览表
- Filter配置大全
- iphone上如何用box2d实现爆炸效果?
- snooper 常规版的简单递归
- WCF 对称加密传输
- console程序显示彩色文字 .
- SQL Procedure示例程序04