CFile檔案操作示例

2022-08-29 21:27:24 字數 2311 閱讀 5386

cfile是mfc檔案類的基類,它直接提供非緩衝的二進位制磁碟輸入/輸出裝置,並直接地通過派生類支援文字檔案和記憶體檔案。cfile與carchive類共同使用,支援mfc物件的序列化。

該類有三種常見的建構函式,其中一種宣告形式如下:

cfile(lpctstr lpszfilename,uint nopenflags);
引數:lpszfilename是指定的檔名稱,可以是相對路徑和決定路徑;

nopenflags是指定檔案的操作標誌,常見有以下幾種,:

我們建立乙個單文件mfc工程,命名為file;並在主選單中增加file的選單項,writefile和readfile是其子選單,其id分別是idm_writefile和idm_readfile,這兩個子選單時非popup型別,如下圖所示:

我們在view類中增加這兩個的選單響應函式,其函式分別命名為onwritefile和onreadfile;

onwritefile訊息響應函式:

void cfileview::onwritefile()

; //寫入檔案內容,不包含/0

file.write(szbufdata, strlen(szbufdata));

//立即寫入,不緩衝

file.flush();

//檔案操作結束關閉

file.close();

}

onreadfile訊息響應函式:

void cfileview::onreadfile()

//建立指定大小的buffer

dword dwfilelenth = (dword)file.getlength();

//初始化buffer, 增加乙個/0空間

char *pbuf = new char[dwfilelenth + 1];

memset(pbuf, 0, dwfilelenth + 1);

if (pbuf != null)

}

onwritefile執行結果:

工程目錄下出現test.txt檔案,其內容是「hello word!」;

onreadfile執行結果:

彈出messagebox對話方塊,其內容是「hello word!」;

資料成員

m_hfile

常包含作業系統檔案控制代碼

建構函式

cfile

從乙個路徑或檔案控制代碼構造乙個cfile物件

abort

不管任何警告和錯誤,關閉乙個檔案

duplicate

構造乙個基於該檔案的副本

open

帶錯誤檢驗選項,安全開啟乙個檔案

close

關閉檔案,刪除物件

輸入/輸出

read

從檔案的當前位置讀資料

readhuge

可從檔案的當前位置讀取大於64k資料,在32位程式設計中廢棄了,見read

write

將檔案資料寫入當前檔案位置

writehuge

可將檔案的大於64k資料寫到當前檔案位置,在32位程式設計中廢棄了,見write

flush

溢去未被寫入的任何資料

定位 seek

定位於當前檔案指標

seektobegin

定位當前檔案指標到檔案開頭

seektoend

定位當前檔案指標到檔案尾

getlength

獲取檔案長度

setlength

改變檔案長度

封鎖 lockrange

在檔案中封鎖一定範圍內的位元組

unlockrange

解鎖一定範圍內的位元組

狀態 getposition

獲取當前檔案指標

getstatus

獲取開啟檔案的狀態

getfilename

獲取被選檔案的檔名

getfiletitle

獲取被選檔案的標題

getfilepath

獲取被選檔案的完整路徑

setfilepath

設定被選檔案的完整路徑

靜態 rename

改名指定檔案(靜態函式)

remove

刪除指定檔案(靜態函式)

getstatus

獲取指定檔案的狀態(靜態,虛函式)

setstatus

設定指定檔案的狀態(靜態,虛函式) 

CFile檔案操作

各種關於檔案的操作在程式設計中是十分常見,如果能對其各種操作都瞭如指掌,就可以根據實際情況找到最佳的解決方案,從而在較短的時間內編寫出高效的 因而熟練的掌握檔案操作是十分重要的。本文將對visual c 中有關檔案操作進行全面的介紹,並對在檔案操作中經常遇到的一些疑難問題進行詳細的分析。1 檔案的查...

C File類 檔案操作

c 語言中 file 類同樣可以完成與 fileinfo 類相似的功能,但 file 類中也提供了一些不同的方法。file 類中獲取或設定檔案資訊的常用方法如下表所示。屬性或方法 作用datetime getcreationtime string path 返回指定檔案或目錄的建立日期和時間 dat...

VC中的檔案操作 CFILE

各種關於檔案的操作在程式設計中是十分常見,如果能對其各種操作都瞭如指掌,就可以根據實際情況找到最佳的解決方案,從而在較短的時間內編寫出高效的 因而熟練的掌握檔案操作是十分重要的。本文將對visual c 中有關檔案操作進行全面的介紹,並對在檔案操作中經常遇到的一些疑難問題進行詳細的分析。1 檔案的查...