現在有3個檔案,用界面上的3個按鈕分別打開,進行檔案讀取并進行資料顯示,檔案打開是用檔案對話框進行打開的。另外有一個按鈕是對剛剛打開的檔案進行資料改寫,現在問題是如何判斷我進行檔案讀取時打開的是哪個檔案呢?好讓我對應修改其中的資料,請指教,最好能給出代碼。謝謝!
uj5u.com熱心網友回復:
在檔案讀取前肯定有一個打開檔案的動作,打開的動作就一定要知道檔案的路徑才能打開,所以在打開的時候,就知道了要讀寫的檔案是哪個檔案了uj5u.com熱心網友回復:
CFile::GetFilePathObtaining a File Name From a File Handle
uj5u.com熱心網友回復:
你的意思是獲取檔案路徑嗎?我是用打開對話框打開檔案的,怎么區分3個檔案呢?
uj5u.com熱心網友回復:
能說詳細一點嗎
uj5u.com熱心網友回復:
是一次選擇了三個檔案?在直接檔案讀寫前,肯定要先有一個檔案的操作物件吧,這個操作物件是一個物件對應一個檔案的呀,如果是每次都選擇的一個檔案,那么在點擊確定之后,會回傳你選擇的檔案的路徑的
uj5u.com熱心網友回復:
在檔案讀取前肯定有一個打開檔案的動作,打開的動作就一定要知道檔案的路徑才能打開,所以在打開的時候,就知道了要讀寫的檔案是哪個檔案了
你的意思是獲取檔案路徑嗎?我是用打開對話框打開檔案的,怎么區分3個檔案呢?
是一次選擇了三個檔案?在直接檔案讀寫前,肯定要先有一個檔案的操作物件吧,這個操作物件是一個物件對應一個檔案的呀,如果是每次都選擇的一個檔案,那么在點擊確定之后,會回傳你選擇的檔案的路徑的
沒有回傳啊,我是用打開對話框的方式打開檔案的
uj5u.com熱心網友回復:
CFileDialog dlg(true);if(dlg.DoModal() == IDOK)
{
CString fileName = dlg.GetPathName(); //選擇的檔案名
……
}
uj5u.com熱心網友回復:
CFileDialog dlg(true);
if(dlg.DoModal() == IDOK)
{
CString fileName = dlg.GetPathName(); //選擇的檔案名
……
}
你這是檔案打開對話框的方式,我現在那個寫檔案的按鈕就是想不要打開檔案對話框方式來獲取打開檔案的路徑,該怎么獲取呢?
uj5u.com熱心網友回復:
如果要打開的檔案和應用程式相關的話, 可以用 GetModuleFileName 獲取當前應用程式檔案名(包含完整路徑),由此可以構造出一個絕對路徑uj5u.com熱心網友回復:
如果要打開的檔案和應用程式相關的話, 可以用 GetModuleFileName 獲取當前應用程式檔案名(包含完整路徑),由此可以構造出一個絕對路徑
對了,我是要判斷最近打開的是哪個檔案,然后才能對其改寫其中的資料,所以用什么方法可以判斷出我最近打開的是哪個檔案呢?
uj5u.com熱心網友回復:
http://www.nirsoft.net/utils/opened_files_view.htmluj5u.com熱心網友回復:
把你打開時的檔案名和檔案指標或句柄以Key-Value形式存入map或者自定義結構體struct{CString strName,CFile* pFile},操作檔案你要知道檔案名是什么,然后去拿指標轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/127742.html
標籤:界面
上一篇:關于MFC中CView類的使用
