Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Se sono state usate le funzioni di gestione dei file della libreria di runtime C, le operazioni di lettura e scrittura di MFC risulteranno familiari. Questo articolo descrive la lettura diretta da e la scrittura diretta su un oggetto CFile
. È anche possibile eseguire operazioni di I/O di file memorizzate nel buffer con la classe CArchive .
Per leggere e scrivere nel file
Usare le funzioni membro
Read
eWrite
per leggere e scrivere dati nel file.oppure
La funzione membro
Seek
è disponibile anche per spostarsi a un offset specifico all'interno del file.
Read
accetta un puntatore a un buffer e il numero di byte da leggere, restituendo il numero effettivo di byte letti. Se non è stato possibile leggere il numero di byte richiesto perché viene raggiunta la fine del file (EOF), viene restituito il numero effettivo di byte letti. Se si verifica un errore di lettura, viene generata un'eccezione.
Write
è simile a Read
, ma il numero di byte scritti non viene restituito. Se si verifica un errore di scrittura, inclusa la mancata scrittura di tutti i byte specificati, viene generata un'eccezione. Se si dispone di un oggetto valido CFile
, è possibile leggerlo o scrivervi come illustrato nell'esempio seguente:
TCHAR szBuffer[256];
UINT nActual = 0;
CFile myFile;
if ( myFile.Open( _T("c:\\test\\myfile.dat"), CFile::modeCreate |
CFile::modeReadWrite ) )
{
myFile.Write( szBuffer, sizeof( szBuffer ) );
myFile.Flush();
myFile.Seek( 0, CFile::begin );
nActual = myFile.Read( szBuffer, sizeof( szBuffer ) );
}
Annotazioni
In genere è consigliabile eseguire operazioni di input/output all'interno di un try
/catch
blocco di gestione delle eccezioni. Per altre informazioni, vedere Gestione delle eccezioni (MFC).