CStdioFile::CStdioFile
更新 : 2007 年 11 月
コンストラクタの既定のバージョンは、CFile::Open メンバ関数と共に動作してエラーを調べます。
CStdioFile( );
CStdioFile(
FILE* pOpenStream
);
CStdioFile(
LPCTSTR lpszFileName,
UINT nOpenFlags
);
パラメータ
pOpenStream
C ランタイム関数 fopen の呼び出しで返すファイル ポインタを指定します。lpszFileName
目的のファイルのパスを表す文字列を指定します。相対パスまたは絶対パスを指定できます。nOpenFlags
共有モードおよびアクセス モード。ファイルのオープン時の動作を指定します。オプションをビットごとの OR (|) 演算子で組み合わせることができます。少なくとも、1 つのアクセス許可指定とテキスト/バイナリの指定が必要です。create モードと noInherit モードはオプションです。モードのオプションおよびほかのフラグについては、「CFile::CFile」を参照してください。MFC Version 3.0 以降では、共有フラグを指定できます。
解説
パラメータを 1 つ持つコンストラクタは、既に開かれたファイルのポインタを使って CStdioFile オブジェクトを構築します。ポインタ値には、組み込みの入出力用のファイル ポインタ stdin、stdout または stderr を指定できます。
パラメータを 2 つ持つコンストラクタは、CStdioFile オブジェクトを構築し、指定されたパスに一致するオペレーティング システム ファイルを開きます。
ファイルを開けなかったとき、または作成できなかったときは、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