linux下目录的操作

使用系统函数:opendir、mkdir、readdir、mkdir对目录进行操作

头文件:
#include <sys/types.h>
#include <dirent.h>

1、打开目录 opendir
     
形式:
DIR * opendir(const char * name);
DIR * fopendir(int fd);

返回值:
文件夹不存在,返回NULL,存在返回DIR * dir;

2.读目录readdir
形式:struct dirent * dirp = readdir( dir );
struct dirent
{
     long                      d_info;             //索引节点号
     off_t                     d_off;               //在目录文件中的偏移
     unsigned short     d_reclen;          //文件名长
     char                     d_name[255];   //文件名
};

3.关闭目录closedir
closedir(DIR * dir);

4.创建目录mkdir
int fd = mkdir("dir_path", mod_t mod); 
例:
创建名为my_dir的目录,权限为所有用户(组)均可读、写、操作
if(NULL != (dir = opendir("./my_dir")))
{
     int fd = mkdir("./my_dir", 0755);
     if(fd == -1)
     {
          perror("create my_dir failt\n");
     }
}

实例:
#include <sys/types.h>
#include <dirent.h>
#include <stdio.h>

int main(void)
{
     DIR * dp;
     struct dirent *dirp;

     dp = opendir("./");
     if( dp == NULL)
     {
          perror("opendir\n");
          return -1;
     }
     
     while(NULL != (dirp = readdir(dp)))
      {
           printf("filename = %s\n", dirp->d_name);
      }  

     closedir(dp);

     return 0;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值