creat函式
close函式
rename函式
remove函式
dup和dup2函式
用於開啟或建立檔案,在開啟或者建立檔案的屬性及使用者許可權等各種引數
#inlude
intopen
(const
char
*path,
int flags,mode t_mode)
;
若成功放回檔案描述符,出錯就返回-1
引數值含義
path
被開啟的檔名(可包括路徑名如"dev/ttys0")
flags
檔案開啟方式
o_rdonly
以唯讀方式開啟檔案
o_wronly
以只寫方式開啟檔案
o_rdwr
以讀寫方式開啟檔案
o_creat
如果改檔案不存在,就建立乙個新的檔案,並用第三個引數為其設定許可權
o_excl
如果使用o_creat時檔案存在,則返回錯誤訊息。這一引數可測試檔案是否存在。此時open是原子操作,防止多個程序同時建立同乙個檔案
o_noctty
使用本引數時,若檔案為終端,那麼該終端不會成為呼叫open()的那個程序的控制終端
o_trunc
若檔案已經存在,那麼會刪除檔案中的全部原有資料,並且設定檔案大小為0
以新增方式開啟檔案,在開啟檔案的同時,檔案指標指向檔案的末尾,即將寫入的資料新增到檔案的末尾
o_nonblock:
如果pathname指的是乙個fifo、乙個塊特殊檔案或乙個字元特殊檔案,則此選擇項為此檔案的本次開啟操作和後續的i/o操作設定非阻塞方式。
o_sync
使每次write都等到物理i/o操作完成。
o_rsync
read 等待所有寫入同一區域的寫操作完成後再進行在open()函式中,falgs引數可以通過「
perms被開啟檔案的訪問許可權,可以用兩種方法表示,可以用一組巨集定義:s_i(r/w/x)(usr/grp/oth),其中r/w/x表示讀寫執行許可權,
usr/grp/oth分別表示檔案的所有者/檔案所屬組/其他使用者,如s_iruur|s_iwuur|s_ixuur,(-rex------),也可用八進位制800表示同樣的許可權
t_mode對應的是使用檔案的許可權
write函式隊檔案寫入資料
#include
ssize_t write
(int file_des,
const
void
*buf,size_t)
;
read函式從檔案讀取資料
#include
ssize_read
(int file_des,
void
*buf,size_t nbytes)
;
creat函式用於建立乙個檔案
#include
intcreat
(const
char
* path,mode_t mode)
;
返回值:若成功,返回以只寫方式開啟的檔案描述符;若出錯,則為-1
用來關閉乙個被開啟的檔案
#include
intclose
(int fd)
;
返回值:若成功返回0,若出錯返回-1.引數fd是需關閉檔案描述符。
當乙個程序終止時,他所有的開啟檔案都由核心自動關閉
使用者修改檔名稱
#include
intrename
(const
char
*oldpath,
const
char
*newpath)
;
放回值:若成功返回0,出錯返回-1
引數oldpath時檔案的原路徑;newpath時檔案的新路徑
刪除檔案
#include
intremove
(const
char
* pathname)
;
#include
intdup
(int file_des)
;
#include
intdup2
(int file_des,
int file_des2)
;
dup和dup2都用於複製乙個現有的檔案描述符,成功返回新的檔案描述符,出錯返回-1
主要兩個區別:
C 複習(十八)檔案讀寫操作
對檔案的讀寫操作可通過以下三個類來進行 一 file類 string path f fcj haha.txt if file.exists path file.create path file.writealltext path,今天c 複習結束 二 streamwriter streamreade...
C 學習筆記(十八) 檔案操作
檔案型別 二進位制檔案 檔案以文字的二進位制形式儲存 檔案流類 ifstream 專用於從檔案中讀取資料 ofstream 專用於向檔案中寫入資料 fstream 既可寫也可讀,一般使用fstream類,其標頭檔案是fstream.h 使用open函式,open函式是建立檔案流物件和檔案之間的關聯 ...
linux 檔案操作
1 cat 開啟檔案 cat name.txt 開啟檔案name.txt cat 1.txt 2.txt 開啟2個檔案 cat n name.txt 開啟檔案後顯示行號 2 vi 輸出,刪除,查詢,替換,塊操作 等文字操作 vi 的三種基本工作模式 命令列模式,文字輸入模式,末行模式 命令列模式 不...