Compartir a través de


Abrir archivos

En MFC la forma más frecuente de abrir archivos consiste en un proceso de dos fases.

Para abrir un archivo

  1. Cree el objeto de archivo sin indicar una ruta de acceso o marcas de permiso.

    Normalmente se crea un objeto de archivo al declarar una variable CFile en marco de pila.

  2. 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 Open no será 0 si el archivo se abrió correctamente y si no se puede abrir el archivo se devolverá 0. Se crea un prototipo para la función miembro Open de la siguiente manera:

    virtual BOOL Open( LPCTSTR lpszFileName, UINT nOpenFlags, CFileException* pError = NULL );

    Las marcas abiertas especifican los permisos, como de solo lectura, que quiere que tenga el archivo. Los valores de marca posibles se definen como constantes enumeradas en la clase CFile, por lo que se califican con "CFile::" como en CFile::modeRead. Use la marca CFile::modeCreate para crear el archivo.

En el ejemplo siguiente se explica cómo se crea un nuevo archivo con permiso de lectura y escritura, que reemplazará cualquier archivo anterior con 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 ilustra como crea y abre un archivo. Si hay problemas, la llamada Open puede devolver un objeto CFileException en su último parámetro, como se muestra aquí. La macro TRACE imprime el nombre de archivo y el código que indica el motivo del error. Puede llamar la función AfxThrowFileException si necesita informes de errores con más detalle.

Consulte también

CFile (clase)
CFile::Open
Archivos