dirent.h

#include <dirent.h>
是POSIX.1标准定义的unix类目录操作的头文件,包含了许多UNIX系统服务的函数原型,例如opendir函数、readdir函数.
opendir函数:
DIR *opendir(const char *pathname);返回值:若成功则返回指针,若出错则返回NULL。
struct dirent *readdir(DIR *dp); 返回值:若成功则返回指针,若在目录结尾或出错则返回NULL。
===============================================================================
列出一个目录下所有文件的名字,简要实现unix下ls命令
#include<dirent.h> 

intmain(intargc,char*agrv[])
{
DIR*dp;
structdirent*dirp; 

if(argc!=2)
printf("usage:lsdirectory_name\n");
if((dp=opendir(agrv[1]))==NULL)
printf("cannotopen%s",agrv[1]);
while((dirp=readdir(dp))!=NULL)
printf("%s\n",dirp->d_name);
closedir(dp); 

return0;
 } 
时间: 2024-10-10 20:31:08

dirent.h的相关文章

头文件dirent.h

<dirent.h>是POSIX.1标准定义的unix类目录操作的头文件,包含了许多UNIX系统服务的函数原型,例如opendir函数.readdir函数. opendir函数: DIR *opendir(const char *pathname);返回值:若成功则返回指针,若出错则返回NULL. struct dirent *readdir(DIR *dp); 返回值:若成功则返回指针,若在目录结尾或出错则返回NULL. 命令 列出一个目录下所有文件的名字,简要实现unix下ls命令 #in

文件类型分类:头文件dirent.h中定义的文件类型与linux内文件符号对应关系

头文件 dirent.h 定义了文件类型: enum{    DT_UNKNOWN = 0,         //未知类型    DT_FIFO = 1,            //first in, first out 类似于管道, 有名管道    DT_CHR = 2,             //字符设备文件    DT_DIR = 4,             //目录    DT_BLK = 6,             //块设备文件    DT_REG = 8,          

dirent.h文件

dirent.h头文件 1 /* 2 * Dirent interface for Microsoft Visual Studio 3 * 4 * Copyright (C) 1998-2019 Toni Ronkko 5 * This file is part of dirent. Dirent may be freely distributed 6 * under the MIT license. For all details and documentation, see 7 * http

struct dirent/DIR

#include <dirent.h> struct dirent { long d_ino;//inode number索引节点号 off_t d_off;//offset to this dirent 在目录文件中的偏移 unsigned short d_reclen;//length of this d_name 文件名长 unsigned char d_type;//the type of d_name 文件类型 char d_name[NAME_MAX+1];//文件名,最长256字

unix高级编程中的一个头文件 apue.h 与一个差错文件error.c 的内容

在查看unix高级编程中的代码时,如果我们编写书中的代码,发现一般都会报错,这是因为作者在写这本书时,他自己编写了一个头文件,跟一个差错处理文件,出来处理他自己的代码错误信息: 下面我们来看下代码的内容: 我实现第一个代码,关于文件的打开,实现 ls 命令的代码: #include "apue.h"#include <stdio.h>#include <dirent.h> int main(int argc, char *argv[]){ DIR *dp; st

struct dirent 和DIR

1.存储目录中的文件信息(文件名.扩展名等等) #include <dirent.h> struct dirent { long d_ino; /* inode number 索引节点号 */ off_t d_off; /* offset to this dirent 在目录文件中的偏移 */ unsigned short d_reclen; /* length of this d_name 文件名长 */ unsigned char d_type; /* the type of d_name

Linux下struct dirent,DIR,struct stat使用例子

以下例子,读取遍历目录中的文件夹,文件,并输出一些属性值,具体的相关结构体定义,可以参考: http://www.liweifan.com/2012/05/13/linux-system-function-files-operation/ http://www.360doc.com/content/11/0110/16/4559801_85509847.shtml /* * linux struct dirent,DIR,struct stat * date: 2015-7-16 * autho

C++轻量级跨平台文件系统API

http://en.cppreference.com/w/cpp/experimental/fs https://www.starmessagesoftware.com/cpcclibrary https://github.com/emcrisostomo/fswatch https://github.com/cginternals/cppfs https://pocoproject.org/docs/ https://github.com/SuperV1234/SSVUtils http://

批量重命名文件

今天突然想给桌面换张壁纸,打开原来的壁纸文件夹,很多当时觉得不错的壁纸现在已经不能看了,删掉一些之后,壁纸文件的名称变得断断续续.当时下载时是按照数字顺序命名的,现在看上去多少有些别扭.于是突发奇想,能否批量给某一目录下的文件重命名,比如我现在的壁纸文件夹. 首先我想到应该要打开一个目录,猜想是否有opendir之类的函数?果然有!在头文件<dirent.h>下面: DIR* __cdecl __MINGW_NOTHROW opendir (const char*); 返回值是DIR*,查看D