第6章 使用檔案訪問物件
檔案可以用來儲存一張《清明上河圖》,一曲《春江花月夜》,當然也可以儲存一部《紅樓夢》,檔案的內容依賴於應用程式來解釋。幾乎所有的作業系統都通過檔案的介面允許使用者儲存、管理資料。所以,我們理所當然把檔案當做資料訪問介質的第一選擇。
6.1 檔案操作的幾種方式
操作計算機的人都會接觸到檔案,檔案的操作通常包括檔案的讀取、修改,有的時候我們還需要對檔案進行外部管理,包括檔案複製、刪除及屬性設定等。
6.1.1 使用crt函式std::f***()
檔案操作可以採用c語言執行時期庫來完成,crt提供的f***()函式如表6-1所示。
表6-1crt
檔案操作函式
函式含義
fopen
開啟指定檔名的檔案
fread
從檔案中讀取指定長度的資料
fwrite
向檔案中寫入指定的資料
fclose
關閉檔案
feof
判斷是否達到檔案結尾
fgetc
從文字檔案中讀取乙個字元
fgets
從文字檔案中讀取乙個字串
fputc
向文字檔案中寫入乙個字元
fputs
向文字檔案中寫入乙個字串
當我們開啟、建立乙個檔案時,常常需要呼叫fopen()函式,該函式的原型為:
file*fopen(引數解釋const
char*filename,
const
char*mode
);
filename:指定檔案的檔名,如test.out。
mode:指定檔案的操作方式,如表6-2所示。
表6-2fopen
檔案操作方式
標誌含義r
讀模式,如果檔案不存在則會失敗 w
寫模式,如果檔案已存在則會清空其內容 a
追加模式,寫入的內容追加在原有內容之後,
如果檔案不存在則會自動建立 r+
讀寫模式(檔案必須存在) w+
讀寫模式,如果檔案已存在則會清空其內容 a+
讀+追加模式 t
文字方式 b
二進位制方式
ccs=encoding
檔案編碼方式,可指定
encoding
為 utf-8
、utf-16le
、unicode
檔案的操作方式可以是如上標誌的組合,如:r+b。當採用"ccs=encoding"時,我們需要在前面新增乙個","作為分隔。如我們以讀寫方式、unicode編碼開啟某個檔案:
fopen("newfile.txt"如下羅列出使用crt函式進行檔案操作的流程。, "rw, ccs=unicode"
);
使用fopen()建立、開啟檔案,返回乙個檔案指標file *;
以file *作為引數,呼叫fread()、fwrite()等操作函式完成對檔案的讀寫。fread()、fwrite()函式的原型為:
size_tfread(呼叫fclose()關閉檔案指標。void*buffer,
size_tsize,
size_tcount,
file*stream
);
size_tfwrite(
const
void*buffer,
size_tsize,
size_tcount,
file*stream
);
使用crt操作檔案流程如圖6-1所示。
以上摘自《把脈vc++》
如果你想與我交流,如下鏈結加我為好友:http://student.csdn.net/invite.php?u=113292&c=8913f87cffe7d533
VC中檔案操作的幾種方式(1,2)
第6章 使用檔案訪問物件 檔案可以用來儲存一張 清明上河圖 一曲 春江花月夜 當然也可以儲存一部 紅樓夢 檔案的內容依賴於應用程式來解釋。幾乎所有的作業系統都通過檔案的介面允許使用者儲存 管理資料。所以,我們理所當然把檔案當做資料訪問介質的第一選擇。6.1 檔案操作的幾種方式 操作計算機的人都會接觸...
VC中檔案操作的幾種方式(1,2)
第6章 使用檔案訪問物件 檔案可以用來儲存一張 清明上河圖 一曲 春江花月夜 當然也可以儲存一部 紅樓夢 檔案的內容依賴於應用程式來解釋。幾乎所有的作業系統都通過檔案的介面允許使用者儲存 管理資料。所以,我們理所當然把檔案當做資料訪問介質的第一選擇。6.1 檔案操作的幾種方式 操作計算機的人都會接觸...
VC中檔案的操作
各種關於檔案的操作在程式設計中是十分常見,如果能對其各種操作都瞭如指掌,就可以根據實際情況找到最佳的解決方案,從而在較短的時間內編寫出高效的 因而熟練的掌握檔案操作是十分重要的。本文將對visual c 中有關檔案操作進行全面的介紹,並對在檔案操作中經常遇到的一些疑難問題進行詳細的分析。1 檔案的查...