1、目录IO与文件IO的区别
目录IO | 文件IO |
---|
opendir—打开目录 | open—打开文件 |
mkdir—创建目录 | ----------- |
readndir—读目录 | read—读文件 |
closedir—关闭目录 | close—关闭文件 |
区别:在之前的博客中提到的文件IO和标准IO都是对文件的操作;而目录IO都是对目录的操作。
正如表格中提到的:
(1)针对文件IO,若想创建一个文件,可以在打开文件的时候加入“O_CREAT”参数;但是对于目录IO来说,这种方式是无效的,创建目录需要用“mkdir”函数
(2)read读文件涉及到的是读取文件中的内容,比如说:读取到文件“a.c”中的内容是“helloworld!”;读目录读取到的是该目录下的子文件与子目录等读到的都是在ubuntu界面中使用“ls”命令时可以看到的内容,并不涉及文件的具体内容。
(3)closedir是关闭目录,是围绕目录进行操作的;而文件IO中的close函数是围绕文件进行操作的。
2、mkdir函数的函数原型
#include<sys/stat.h>
#include<sys/types.h>
int mkdir(const char *pathname,mode_t mode);
int mkdir(const char pathname,mode_t mode):代表返回值是int类型的,“const charpathname”是想要创建的这个目录的文件路径及名称,“mode_t mode”代表的是权限。
注释:在用shell命令创建一个目录可以直接在ubuntu界面输入:mkdir+目录名称;但是想在程序上创建一个目录,就要用到目录IO中的mkdir函数。
3、mkdir函数应用实例
c代码如下:
#include<stdio.h>
#include<sys/stat.h>
#include<sys/types.h>
int main(int argc, char* argv[])
{
//argc:表示的是命令行中参数的个数
//argv:表示的是命令行中的参数
int ret;
if (argc != 2) {
printf("Usage%s <name file> \n",argv[0]);
return -1;
}
ret = mkdir(argv[1],0666);
if (ret < 0) {
printf("mkdir is error\n");
return -2;
}
printf("mkdir is ok\n");
return 0;
}
在ubuntu界面的测试结果如下:
最后,回顾一下之前学习过的ubuntu系统中各个文件的颜色含义
颜色 | 代表的含义 |
---|
蓝色 | 文件夹 |
红色 | 压缩文件 |
绿色 | 可执行文件 |
淡蓝色 | 符号链接 |
白色 | 文本文件 |
红色闪烁 | 错误的符号链接 |
黄色 | 设备文件 |
灰色 | 其他文件 |
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)