віртуальний BOOL Open ( LPCTSTR lpszFileName, UINT nOpenFlags, CFileException * pError = NULL );
Значення, яке повертається
Ненульовий, якщо відкритим успішним; в іншому випадку 0. PError параметр має сенс тільки якщо повертається 0.
Параметри
lpszFileName
Рядок, який є шлях до потрібного файлу. Шлях може бути родич, абсолютні або ім ' я мережі (UNC).
nOpenFlags
У UINT що визначає режим обміну та доступу до файлу. Вказує на дії слід вжити під час відкриття файлу. Ви можете об'єднати параметри за допомогою оператора порозрядне OR (|). Один доступу та параметр одна акція обов'язкові; Необов'язкові modeCreate та modeNoInherit режимах. Переглянути список параметрів режиму, конструктор CFile.
pError
Вказівник на існуючий файл винятку об'єкт, який буде отримувати стан збій операції.
Зауваження
Відкрити розроблені для використання за замовчуванням Конструктор CFile . Дві функції формі "безпечними" спосіб для відкриття файлу, де провал є нормальним, очікувані умови.
Хоча CFile Конструктор буде кидати виняток у помилку, відкриті буде повернутися ПОМИЛКОВИМ для умовам помилок. Відкрити ще можете ініціалізувати CFileException об'єкт для опису помилки, однак. Якщо не вказати параметр pError , або якщо ви передати значення NULL для pError, відкриті буде повернутися ПОМИЛКОВИМ і не кинути CFileException. Якщо ви передаєте вказівник до існуючих CFileException, і відкритий виникає помилка, функція буде заповнити його з інформацією, що описує цю помилку. У випадку ні буде відкрито кидати виняток.
У нижченаведеній таблиці описано можливі результати відкритого.
| pError | Сталася помилка під? | Значення, яке повертається | CFileException вмісту |
| NULL | Ні | ПРАВДА | n/a |
| покажчик на CFileException | Ні | ПРАВДА | без змін |
| NULL | Так | ПОМИЛКОВІ | n/a |
| покажчик на CFileException | Так | ПОМИЛКОВІ | ініціалізувати для опису помилки |
Приклад
//example для CFile::Open
CFile f;
CFileException e;
Чар * pFileName = "test.dat";
Якщо (! f.Open (pFileName, CFile::modeCreate | CFile::modeWrite, amp; e))
{
#IFDEF _DEBUG
afxDump << "Не вдається відкрити файл" << e.m_cause << "\n";
#endif
}
Огляд CFile | Члени класу | Ієрархічна діаграма
Дивіться також CFile::CFile, CFile::Close