virtuelleBOOLOpen (LPCTSTRLpszFileName,UINTnOpenFlags,CFileException *pErrorNULL=);
Rückgabewert
Ungleich NULL, wenn die offene erfolgreich war; andernfalls 0. Der pError -Parameter ist nur relevant, wenn 0 zurückgegeben wird.
Parameter
lpszFileName
Eine Zeichenfolge, die den Pfad zur gewünschten Datei ist. Der Pfad kann relativ, absolut oder einen Netzwerknamen (UNC) sein.
nOpenFlags
Ein UINT , die definiert die Datei freigeben und Modus. Es gibt die Aktion an, die beim Öffnen der Datei. Sie können Optionen kombinieren, indem Sie den Operator bitweise OR (|). Eine Zugriffsberechtigung und einer Aktienoption sind erforderlich; die Modi ModeCreate und ModeNoInherit sind optional. Finden Sie eine Liste der Optionen im CFile -Konstruktor.
pError
Ein Zeiger auf eine vorhandene Datei-Exception-Objekt, das den Status einer fehlgeschlagenen Operation erhalten.
Bemerkungen
Offen ist für die Verwendung mit dem Standardkonstruktor CFile entworfen. Die beiden Funktionen bilden eine "sichere" Methode zum Öffnen einer Datei ein Fehler eine normale, erwartete Bedingung ist.
Während der CFile -Konstruktor eine Ausnahme in einer Fehlerbedingung ausgelöst wird, wird Open FALSE für Fehlerbedingungen zurückgegeben. Open kann noch ein CFileException -Objekt jedoch den Fehler beschreiben initialisieren. Wenn Sie nicht den pError -Parameter angeben, oder NULL für pErrorübergeben, werden offene FALSE zurückgeben und nicht werfen ein CFileException. Wenn Sie einen Zeiger auf eine vorhandene CFileException übergebenund Öffnen ein Fehler auftritt, wird die Funktion mit Informationen, die den Fehler beschreiben füllen. In keinem Fall wird Open eine Ausnahme auslösen.
Die folgende Tabelle beschreibt die möglichen Ergebnisse der offenen.
| pError | Ist ein Fehler aufgetreten? | Rückgabewert | CFileException Inhalt |
| NULL | Nr. | WAHR | n/a |
| pTR CFileException | Nr. | WAHR | unverändert |
| NULL | Ja | FALSCH | n/a |
| pTR CFileException | Ja | FALSCH | initialisiert, um fehler zu beschreiben |
Beispiel
//Example für CFile::Open
CFile f;
CFileException e;
Char * pFileName = "test.dat";
Wenn (! f.Open (pFileName, modeCreate | CFile::modeWrite, Amp; e))
{
# ifdef _DEBUG
AfxDump << "Datei konnte nicht geöffnet werden" << e.m_cause << "\n";
# endif
}
CFile Übersicht | Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CFile::CFile, CFile::Close