在C語言中,調用文件的方法主要有以下兩種:
使用標準庫函數進行文件操作:
fopen()
函數打開一個文件,并返回一個指向該文件的指針。函數原型為FILE *fopen(const char *filename, const char *mode)
,其中filename
為文件名,mode
為操作模式(如"r"表示只讀,"w"表示寫入,"a"表示追加等)。fread()
和fwrite()
函數進行文件的讀寫操作。fread()
函數原型為size_t fread(void *ptr, size_t size, size_t count, FILE *stream)
,其中ptr
為讀取的數據存放的內存地址,size
為每個數據項的字節數,count
為要讀取的數據項個數,stream
為要讀取的文件指針。fwrite()
函數原型和參數類似,用于向文件中寫入數據。fclose()
函數關閉已打開的文件。函數原型為int fclose(FILE *stream)
,其中stream
為要關閉的文件指針。使用低級I/O函數進行文件操作:
open()
函數打開文件,并返回一個文件描述符。函數原型為int open(const char *filename, int flags, mode_t mode)
,其中filename
為文件名,flags
為打開文件的標志(如O_RDONLY
表示只讀,O_WRONLY
表示寫入,O_APPEND
表示追加等),mode
為文件的訪問權限。read()
和write()
函數進行文件的讀寫操作。read()
函數原型為ssize_t read(int fd, void *buf, size_t count)
,其中fd
為文件描述符,buf
為讀取的數據存放的內存地址,count
為要讀取的字節數。write()
函數原型和參數類似,用于向文件中寫入數據。close()
函數關閉已打開的文件。函數原型為int close(int fd)
,其中fd
為要關閉的文件描述符。需要注意的是,在使用文件操作函數時,需要包含相關的頭文件(如stdio.h
和fcntl.h
)并進行錯誤處理。另外,還可以使用其他一些函數來設置文件指針位置、判斷文件是否存在等。