Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En MFC, la forma más común de abrir un archivo es un proceso de dos fases.
Para abrir un archivo
Cree el objeto de archivo sin especificar una ruta de acceso o marcas de permiso.
Normalmente, se crea un objeto de archivo declarando una variable CFile en el marco de pila.
Llame a la función miembro Abrir para el objeto de archivo y proporcione una ruta de acceso y marcas de permiso.
El valor devuelto de
Openserá distinto de cero si el archivo se abrió correctamente o 0 si no se pudo abrir el archivo especificado. La función miembroOpenestá prototipada de la siguiente manera:virtual BOOL Open( LPCTSTR lpszFileName, UINT nOpenFlags, CFileException* pError = NULL );Las marcas abiertas especifican qué permisos, como de solo lectura, desea para el archivo. Los valores de marca posibles se definen como constantes enumeradas dentro de la
CFileclase , por lo que se califican con "CFile::" como enCFile::modeRead. Use laCFile::modeCreatemarca si desea crear el archivo.
En el ejemplo siguiente se muestra cómo crear un nuevo archivo con permiso de lectura y escritura (reemplazando cualquier archivo anterior por la misma ruta de acceso):
TCHAR* pszFileName = _T("c:\\test\\myfile.dat");
CFile myFile;
CFileException fileException;
if ( !myFile.Open( pszFileName, CFile::modeCreate |
CFile::modeReadWrite, &fileException ) )
{
TRACE( _T("Can't open file %s, error = %u\n"),
pszFileName, fileException.m_cause );
}
Nota:
En este ejemplo se crea y se abre un archivo. Si hay problemas, la Open llamada puede devolver un CFileException objeto en su último parámetro, como se muestra aquí. La macro TRACE imprime tanto el nombre de archivo como un código que indica el motivo del error. Puede llamar a la AfxThrowFileException función si necesita informes de errores más detallados.