Freigeben über


Lesen und Schreiben von Dateien

Wenn Sie die C-Laufzeitbibliotheks-DateiBehandlungsfunktionen verwendet haben, finden MFC-Lesen und -Schreiboperationen vertraut aus. Dieser Artikel beschreibt, direkt lesen und ausgeben direkt auf ein CFile-Objekt schreiben. Sie können gepufferte Datei-E/A mit der Klasse CArchive ausführen.

So Lese- und in die Datei schreiben

  1. Verwenden Sie Lesen und Schreiben-Memberfunktionen, um Daten in die Datei zu lesen und zu schreiben.

    - oder -

  2. Die Seek-Memberfunktion ist auch für das Wechseln zu einem bestimmten Offset in die Datei verfügbar.

Lesen akzeptiert einen Zeiger auf einen Puffer und die Anzahl von Bytes, die zum Lesen und die tatsächliche Anzahl von Bytes zurück, die gelesen wurden. Wenn die benötigte Anzahl von Bytes nicht gelesen werden konnte, da dass (EOF) erreicht wird, wird die tatsächliche Anzahl der gelesenen Bytes zurückgegeben. Falls tritt Lesefehler, wird eine Ausnahme ausgelöst auf. Schreiben entspricht Lesen ähnlich, aber die Anzahl der Bytes geschrieben wurde nicht zurückgegeben. Wenn ein Schreibfehler erfolgt, das Schreiben aller Bytes nicht angegeben einschließend, wird eine Ausnahme ausgelöst. Wenn Sie einen gültigen CFile-Objekt verfügen, können Sie von ihm lesen oder darauf wie im folgenden Beispiel schreiben:

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 ) ); 
}

Hinweis

Sie sollten Eingabe/Ausgabe-Arbeiten innerhalb eines try/catch Ausnahmebehandlungsblocks normalerweise ausführen.Weitere Informationen finden Sie unter Ausnahmebehandlung (MFC).

Siehe auch

Konzepte

Dateien in MFC