CStdioFile::CStdioFile
建構和 CStdioFile 初始化物件。
CStdioFile();
CStdioFile(
CAtlTransactionManager* pTM
);
CStdioFile(
FILE* pOpenStream
);
CStdioFile(
LPCTSTR lpszFileName,
UINT nOpenFlags
);
CStdioFile(
LPCTSTR lpszFileName,
UINT nOpenFlags,
CAtlTransactionManager* pTM
);
參數
pOpenStream
指定呼叫方法所傳回的資料指標給 C 執行階段函式 fopen。lpszFileName
指定是路徑設定為所要的檔案的字串。 可以是相對路徑或絕對路徑。nOpenFlags
針對檔案建立、檔案共用和檔案存取模式指定選項。 您可以將位元指定多個選擇使用或 ( |) 運算子。需要一個檔案存取模式選取,其他方式是選擇性的。 請參閱方式選項和其他清單的 CFile::CFile 旗標。 在 MFC 3.0 (含) 以後版本,共用旗標允許。
pTM
為 CAtlTransactionManager 物件的指標。
備註
預設建構函式不會將檔案附加至 CStdioFile 物件。 當使用這個建構函式時,您必須使用 CStdioFile::Open 方法開啟檔案並將它附加至 CStdioFile 物件。
單一參數的建構函式附加開啟檔案資料流的 CStdioFile 物件。 允許的指標值包含預先定義的輸入/輸出檔案指標 stdin、 stdout或 stderr。
兩個參數的建構函式會建立物件 CStdioFile 並開啟具有指定路徑的對應檔案。
如果您傳遞 pOpenStream 或 lpszFileName的 NULL ,建構函式會擲回 CInvalidArgException*。
如果無法開啟或建立檔案 (,建構函式會擲回 CFileException*。
範例
TCHAR* pFileName = _T("CStdio_File.dat");
CStdioFile f1;
if(!f1.Open(pFileName, CFile::modeCreate | CFile::modeWrite
| CFile::typeText))
{
TRACE(_T("Unable to open file\n"));
}
CStdioFile f2(stdout);
try
{
CStdioFile f3( pFileName,
CFile::modeCreate | CFile::modeWrite | CFile::typeText );
}
catch(CFileException* pe)
{
TRACE(_T("File could not be opened, cause = %d\n"),
pe->m_cause);
pe->Delete();
}
需求
標題: afx.h