寫入磁碟檔案

fopen(FILENAME, "r") 的意思是要打開檔案 FILENAME,以供讀取資料。 其中的 "r" 就是說要讀 (read) 資料的意思。 這個 "r" 稱為「檔案開啟模式」。 C 語言只准許三種檔案開啟模式:

三種模式獨立出現,不可混合;例如說 "rw" 是沒有意思的, 因為 C 只接受第一個字母,也就是 "r" 的意思。 換句話說,在 C 程式中,不可打開一個既可以讀又可以寫的檔案。 還有一些細節,但是現在都不說了。

fopen() 對於檔案的處理方式,與檔案開啟模式有關,我們簡列於下。

寫資料進檔案的最基本函式就是 putc()。 它的用處和 putchar() 幾乎完全一樣, 只是現在要指定一個檔案指標的變數,寫一個字元到指定的檔案中。 以下是一個簡單的測試程式,讀者應該自己改變符號參數 FILENAME。 這個程式嘗試打開一個名叫 FILENAME 的檔案, 如果成功了,就覆寫一句 Hi 進去。


#include <stdio.h>
 
/* 測試 fopen(), putc() and fclose()  (test-putc.c) */
#define FILENAME "test-putc"

main() {
    FILE *fp;
    if ((fp = fopen(FILENAME, "w")) == NULL)
        printf("File is not writable.\n");
    else {
        putc('H', fp);
        putc('i', fp);
        putc('\n', fp);
    }
    fclose(fp);
}

以上程式用 "w" 模式,請讀者自行實驗用 "a" 模式。

習題

[ 前一節 ]‧[ 後一節 ]‧[ 回目錄 ]



注意:此處所有文件均為原著,個別的版權宣告日後會一一公布, 整體版面設計亦尚未完成。但仍請勿抄襲文字與圖片,以免觸犯著作權法。

Created: Feb 28, 2001
Last Revised: Feb 28, 2001
© Copyright 2001 Wei-Chang Shann 單維彰

shann@math.ncu.edu.tw