《unix高階環境程式設計》檔案和目錄 目錄操作

2021-06-27 06:03:51 字數 2731 閱讀 4790

目錄的基本操作包括開啟目錄opendir、讀取目錄readdir、關閉目錄closedir等操作,如下說明:

[cpp]view plain

copy

/********************

* 目錄操作:

* 1、開啟目錄opendir

**  函式功能:開啟乙個目錄;

*  返回值:若成功返回乙個目錄指標,若出錯則返回null指標;

*  函式原型:

*  #include 

*  #include 

*  dir *opendir(const char *pathname);

** 2、讀乙個目錄readdir

**  函式功能:讀取目錄

*  返回值:若成功返回指標,若在目錄結尾或出錯則返回null;

*  函式原型:

*  #include 

*  #include 

*  struct dirent *readdir(dir *dp);

** 3、重設與dp關聯的目錄中的位置

**  函式功能:重設與dp關聯的在目錄中的位置;

*  沒有返回值;

*  函式原型:

*  #include 

*  #include 

*  void rewinddir(dir *dp);

** 4、dp關聯的在目錄的當前位置return current location in directory stream.

** 函式功能:獲取與dp關聯的在目錄中的當前位置;

*  返回值:若成功返回與dp關聯的在目錄中的當前位置,若出錯返回-1;

*  函式原型:

*  #include 

*  off_t telldir(dir *dp);

** 5、the seekdir() function sets the location in the  directory

*    stream  from  which  the  next  readdir() call will start.

*    seekdir() should  be  used  with  an  offset  returned  by telldir().

**   函式功能:設定下乙個readdir呼叫在目錄的位置

*    無返回值

*    函式原型:

*    #include 

*    void seekdir(dir *dp, off_t offset);

** 6、關閉乙個已開啟的目錄

**  函式功能:關閉乙個已開啟的目錄

*  返回值:若成功返回0,若出錯返回-1;

*  函式原型:

*  #include 

*  #include 

*  int closedir(dir *dp);

*  **********************************/

[cpp]view plain

copy

/************************************

* struct dirent結構資訊

* *******/

struct

dirent  

;  

[cpp]view plain

copy

/***********

* 目錄建立

* 函式功能:建立乙個空目錄

* 返回值:若成功則返回0,若出錯則返回-1;

* 函式原型:

* #include 

* int mkdir(const char *pathname, mode_t mode);

* 說明:

* 此函式建立乙個新的空目錄,其中.和..目錄項是自動建立的。

* 所指定的檔案訪問許可權mode由程序的檔案模式建立遮蔽字修改。

** 刪除空目錄

* 函式功能:刪除乙個空的目錄

* 返回值:若成功則返回0,若出錯則返回-1;

* 函式原型:

* #include 

* int rmdir(const char *pathname);

* 說明:

* 如果呼叫該函式使目錄的鏈結數為0,且沒有其他程序開啟該目錄,則釋放該目錄空間。

* 若鏈結數為0,此時有程序開啟該目錄,在程序關閉前不會釋放目錄空間。

* ***************/

/*************************

* 更改當前工作目錄。

* 函式功能:更改當前的工作目錄;

* 返回值:若成功則返回0,若出錯則返回-1;

* 函式原型:

* #include 

* int chdir(const char *pathname);

* int fchdir(int filedes);

* 說明:

* 這兩個函式分別用pathname或開啟檔案描述符來指定當前的工作目錄。

* **********/

/*************

* 獲取當前工作目錄的絕對路徑

* 函式原型:

* #include 

* char *getcwd(char *buf, size_t size);

* ***************/

《unix高階環境程式設計》檔案和目錄 檔案時間

cpp view plain copy 檔案時間 st atime 最後訪問時間,即最後訪問檔案的時間 st mtime 最後修改時間,即修改檔案內容的時間 st ctime 最後更改時間,即更改inode節點的時間 utime函式 函式功能 更改檔案訪問時間和檔案修改時間 返回值 若成功則返回0,...

UNIX環境高階程式設計複習 檔案和目錄(1)

includeint stat const char restrict pathname,struct stat restruct buf int fstat int filedes,struct stat buf int lstat const char pathname,struct sat r...

檔案和目錄 UNIX環境高階程式設計 第4章

4.2 stat fstat和lstat函式 int stat const char restrict pathname,struct stat restrict buf int fstat int filedes,struct stat buf int lstat const char restr...