Apertura di file

In MFC, il modo più comune per aprire un file è un processo a due fasi.

Per aprire un file

  1. Creare l'oggetto file senza specificare un percorso o flag di autorizzazione.

    In genere si crea un oggetto file dichiarando una variabile CFile nel frame dello stack.

  2. Chiamare la funzione membro Open per l'oggetto file, specificando un percorso e i flag di autorizzazione.

    Il valore restituito per Open sarà diverso da zero se il file è stato aperto correttamente o 0 se non è stato possibile aprire il file specificato. La Open funzione membro viene prototipo come indicato di seguito:

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

    I flag aperti specificano le autorizzazioni, ad esempio di sola lettura, per il file. I valori dei flag possibili vengono definiti come costanti enumerate all'interno della CFile classe , pertanto sono qualificati con "CFile::" come in CFile::modeRead. Usare il CFile::modeCreate flag se si desidera creare il file.

L'esempio seguente illustra come creare un nuovo file con autorizzazione di lettura/scrittura (sostituendo qualsiasi file precedente con lo stesso percorso):

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

In questo esempio viene creato e aperto un file. In caso di problemi, la Open chiamata può restituire un CFileException oggetto nell'ultimo parametro, come illustrato di seguito. La macro TRACE stampa sia il nome del file che un codice che indica il motivo dell'errore. È possibile chiamare la AfxThrowFileException funzione se è necessaria una segnalazione degli errori più dettagliata.

Vedi anche

Classe CFile
CFile::Open
File