檔案和資料流
透過讀取和寫入檔案,以便與目標環境溝通的程式。 檔案可以是:
可以重複讀取與寫入的資料集。
程式所產生的位元組資料流 (例如管線)。
接收自或傳送到週邊裝置的位元組資料流。
最後兩個項目是互動式的檔案。 檔案通常是用來與程式互動的主要方式。 您可以藉由呼叫連結庫函式,以相同方式操作所有這些類型的檔案。 包含標準標頭 STDIO.H,即可宣告大部分的這些函式。
針對檔案執行眾多作業之前,必須先開啟檔案。 開啟檔案會將檔案與資料流產生關連。資料流是標準 C 程式庫內的資料結構,可以掩蓋各種檔案之間的許多差異。 程式庫會在類型 FILE 的物件中維護每個資料流的狀態。
目標環境會在程式啟動前開啟三個檔案。 您可以使用兩個自變數呼叫連結庫函 fopen
式來 _wfopen
開啟檔案。 (函fopen
式已被取代,請改用 fopen_s
_wfopen_s
。第一個自變數是檔名。 第二個引數是指定下列事項的 C 字串:
是否要從檔案讀取資料,或要將資料寫入檔案,或是兩者皆要。
您是要為檔案產生新內容(或建立檔案,如果檔案先前不存在),還是保留現有的內容。
寫入檔案時是否可以修改現有的內容,或僅會在檔案結尾處附加位元組。
是否要操作文字資料流或二進位資料流。
順利開啟檔案後,接著要決定資料流是位元組導向 (位元組資料流) 還是寬字元導向 (寬資料流)。 資料流一開始的時候並未繫結。 呼叫某些特定函式在資料流上執行作業,會讓資料流變成位元組導向,而某些特定函式則會讓資料流變成寬字元導向。 建立之後,數據流會維持其方向,直到呼叫 fclose
或 freopen
關閉為止。
© 1989-2001年,P.J.普拉格和吉姆·布羅迪。 著作權所有,並保留一切權利。