Apertura di file
In MFC, il metodo più comune per aprire un file è un processo in due fasi.
Per aprire un file
Creare l'oggetto file senza specificare un percorso o i contrassegni di autorizzazione.
Generalmente si crea un oggetto file dichiarare una variabile di File C sullo stack frame.
Chiamare la funzione membro di Apri per l'oggetto file, fornendo un percorso e i contrassegni di autorizzazione.
Il valore restituito per Open sarà diverso da zero se il file è stato aperto correttamente oppure 0 se il file specificato non può essere aperto. La funzione membro di Open con prototipo è la seguente:
virtual BOOL Open( LPCTSTR lpszFileName, UINT nOpenFlags, CFileException* pError = NULL );
I flag aperti specifica che le autorizzazioni, come di sola lettura, dal file. Valori di flag possibili sono definiti come costanti enumerate nella classe di CFile, pertanto sono qualificati con "CFile::" come in CFile::modeRead. Utilizzare il flag di CFile::modeCreate se si desidera creare il file.
Nell'esempio seguente viene illustrato come creare un nuovo file con l'autorizzazione lettura /scrittura (che sostituisce 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.Se sono presenti problemi, la chiamata di Open può restituire un oggetto di CFileException nell'ultimo parametro, come illustrato di seguito.La macro di TRACE stampa il nome file sia un codice che indicano la causa di errore.È possibile chiamare la funzione di AfxThrowFileException se è richiesta la segnalazione errori più dettagliata.