$darkmode
RuiChing API 参考手册
V0.9.1
目录操作

目录管理及相关操作函数 更多...

结构体

struct  DIR
 
struct  dirent
 dirent 结构体包含目录中一个文件的基本信息 更多...
 

函数

int mkdir (const char *path, mode_t mode)
 创建目录 更多...
 
int rmdir (const char *path)
 删除目录 更多...
 
DIRopendir (const char *pathname)
 打开目录 更多...
 
struct direntreaddir (DIR *dirp)
 读取目录 更多...
 
int closedir (DIR *dirp)
 关闭目录 更多...
 
void seekdir (DIR *dirp, long offset)
 设置下次读取目录的位置 更多...
 
long telldir (DIR *dirp)
 获取目录流的读取位置 更多...
 
void rewinddir (DIR *dirp)
 重设目录流的读取位置为开头位置 更多...
 
int chdir (const char *path)
 更改当前工作目录 更多...
 
char * getcwd (char *buf, size_t size)
 获取当前工作目录 更多...
 

详细描述

目录管理及相关操作函数

函数说明

◆ mkdir()

int mkdir ( const char *  path,
mode_t  mode 
)

创建目录

在指定路径创建一个新的目录,并设置其访问权限模式

参数
[in]path要创建的目录路径
[in]mode目录权限模式(这里未使用,可以设置为0)
返回值
0创建成功
-1创建失败,错误代码将存入当前线程的 errno 中

◆ rmdir()

int rmdir ( const char *  path)

删除目录

删除指定路径的目录

参数
[in]path需要删除目录的绝对路径
返回值
0删除成功
-1删除失败,错误代码将存入当前线程的 errno 中

◆ opendir()

DIR* opendir ( const char *  pathname)

打开目录

打开指定路径的目录并创建目录对象

参数
[in]pathname目录的绝对地址
返回值
非空成功打开的目录指针
NULL打开失败
注解
  • 该函数必须和 closedir() 函数成对使用

◆ readdir()

struct dirent* readdir ( DIR dirp)

读取目录

该函数用来读取目录,每读取一次目录,目录流的指针位置将自动往后递推 1 个位置

参数
[in]dirpopendir() 打开的目录流指针
返回值
非空成功读取到的目录项指针
NULL读取失败

◆ closedir()

int closedir ( DIR dirp)

关闭目录

关闭由 opendir() 打开的目录,并释放关联的系统资源

参数
[in]dirp指向目录的指针,需为非空(由 opendir() 返回)
返回值
0关闭成功
-1关闭失败
注解
  • 该函数必须和 opendir() 函数成对使用

◆ seekdir()

void seekdir ( DIR dirp,
long  offset 
)

设置下次读取目录的位置

该函数用来设置参数 dirp 目录流目前的读取位置,在调用 readdir() 时便从 此新位置开始读取

参数
[in]dirpopendir() 打开的目录指针
[in]offset偏移值,距离本次目录的位移

◆ telldir()

long telldir ( DIR dirp)

获取目录流的读取位置

该函数的返回值记录着一个目录流的当前位置,此返回值代表距离目录文件开头的 偏移量,返回值返回下个读取位置。你可以在随后的 seekdir() 函数调用中利用 这个值 来重置目录扫描到当前位置。也就是说 telldir() 函数可以和 seekdir() 函 数配合使用,重新设置目录流的读取位置到指定的偏移量

参数
[in]dirpopendir() 打开的目录流指针
返回值
>0读取位置的偏移量

◆ rewinddir()

void rewinddir ( DIR dirp)

重设目录流的读取位置为开头位置

该函数可以用来设置 dirp 目录流目前的读取位置为目录流的初始位置

参数
[in]dirpopendir() 打开的目录指针

◆ chdir()

int chdir ( const char *  path)

更改当前工作目录

将当前工作目录更改为指定的路径

参数
[in]path要更改的路径名称
返回值
0更改成功
-1更改失败,错误代码将存入当前线程的 errno 中

◆ getcwd()

char* getcwd ( char *  buf,
size_t  size 
)

获取当前工作目录

将返回当前工作目录,并存入提供的缓冲区中

参数
[out]buf存放当前工作目录的缓冲区指针
[in]size缓冲区大小(字节)
返回值
char*成功时返回的当前目录指针
NULL获取失败,错误代码将存入当前线程的 errno 中