Condividi tramite


Lettura e scrittura di file

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 direttamente in un CFile oggetto . È anche possibile eseguire operazioni di I/O di file memorizzate nel buffer con la classe CArchive .

Per leggere e scrivere nel file

  1. Usare le Read funzioni membro e Write per leggere e scrivere dati nel file.

    -oppure-

  2. La Seek funzione membro è disponibile anche per il passaggio a un offset specifico all'interno del file.

Read accetta un puntatore a un buffer e il numero di byte da leggere e restituisce 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 ) ); 
}

Nota

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).

Vedi anche

File