MFC檔案讀取,CFileDialog和CFile

2021-10-01 12:01:42 字數 1883 閱讀 6805

mfc 通過cfiledialog和cfile 讀取檔案,問題多多》_<

mfc通過cfiledialog,獲取檔案路徑,檔名,檔案型別等。cfile讀取檔案(小於4gb,大於4gb用cfile64)

1參考1

2參考2

.1.獲取檔名稱

explicit cfiledialog(bool bopenfiledialog, lpctstr lpszdefext = null, lpctstr lpszfilename = null, dword dwflags = ofn_hidereadonly | ofn_overwriteprompt, lpctstr lpszfilter = null,cwnd* pparentwnd = null, dword dwsize = 0, bool bvistastyle = true);

引數1:bopenfiledialog,顯示的視窗,檔案開啟對話方塊或檔案另存為對話方塊

引數2:lpszdefext,預設的副檔名,會自動追加到檔名後。

引數3:lpszfilename ,顯示在檔名編輯欄的初始檔名。

引數4:dwflags,用來自定義對話方塊的標誌組合(後詳)

引數5:lpszfilter,檔案篩選(結構見後述)

引數6:pparentwnd,父視窗指標(通常都null)

引數7:dwsize ,the size of the openfilename structure.(找時間查查openfilename structure)

引數8:bvistastyle,顯示vista樣式,為true時使用new vista file dialogs,為false時將使用舊樣式dialogs.

簡單例項:

cfiledialog openfiledlg(true,null,null, ofn_hidereadonly | ofn_overwriteprompt, 「all files(.)|.||」, null);//可以檢視預設位置的所有型別檔案

以下**新增進按鈕的響應函式中,可獲取要讀取檔案的相關資訊

//獲取當前路徑

// hmodule module = getmodulehandle(0);

// char pfilename[max_path];

// getmodulefilename(module, pfilename, max_path); //exe的路徑,debug或release

// cstring csfullpath(pfilename);

// int npos = csfullpath.reversefind( _t('\\') );

// cstring dir=csfullpath.left(npos);

// int npos = getcurrentdirectory( max_path, pfilename); //當前工作路徑,即dsp檔案所在路徑

bool isopen = true;//是否開啟(true為開啟對話方塊,false為儲存對話方塊)

cstring defaultdir = dir; //預設開啟的檔案路徑

cstring filter = "檔案(*.dat)|*.dat|所有型別(*.*)|*.*||"; //檔案過慮的型別

cfiledialog openfiledlg(isopen,null,defaultdir, ofn_hidereadonly | ofn_overwriteprompt, filter, null);

int_ptr result = openfiledlg.domodal();//是否選中檔案,或取消了選擇

if (result == idok)

介面如下:可以選中檔案後得到相應的檔名等資訊

2.得到檔案路徑名稱之後就可以通過cfile讀取

MFC開啟 儲存檔案對話方塊 CFileDialog

mfc開啟 儲存檔案對話方塊 cfiledialog 2008 03 15 12 02 cfiledialog 檔案選擇對話方塊的使用 首先構造乙個物件並提供相應的引數,建構函式原型如下 cfiledialog cfiledialog bool bopenfiledialog,lpctstr lps...

MFC開啟 儲存檔案對話方塊 CFileDialog

cfiledialog 檔案選擇對話方塊的使用 首先構造乙個物件並提供相應的引數,建構函式原型如下 cfiledialog cfiledialog bool bopenfiledialog,lpctstr lpszdefext null,lpctstr lpszfilename null,dword...

MFC讀取配置檔案

在我們寫的程式當中,總有一些配置資訊需要儲存下來,以便完成程式的功能,最簡單的辦法就是將這些資訊寫入ini檔案中,程式初始化時再讀入.具體應用如下 一.將資訊寫入.ini檔案中.1.所用的winapi函式原型為 bool writeprivateprofilestring lpctstr lpkey...