Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Si vous avez utilisé les fonctions de gestion des fichiers de la bibliothèque runtime C, les opérations de lecture et d’écriture MFC s’affichent familières. Cet article décrit la lecture et l'écriture directement dans un objet CFile
. Vous pouvez également effectuer des E/S de fichiers mis en mémoire tampon avec la classe CArchive .
Pour lire et écrire dans le fichier
Utilisez les fonctions membres
Read
etWrite
pour lire et écrire des données dans le fichier.- ou -
La fonction membre
Seek
est également disponible pour se déplacer vers un décalage spécifique dans le fichier.
Read
prend un pointeur vers une mémoire tampon et le nombre d’octets à lire et retourne le nombre réel d’octets qui ont été lus. Si le nombre requis d’octets n’a pas pu être lu, car la fin du fichier (EOF) est atteinte, le nombre réel d’octets lus est retourné. Si une erreur de lecture se produit, une exception est levée. Write
est similaire à Read
, mais le nombre d’octets écrits n’est pas retourné. Si une erreur d’écriture se produit, y compris l'absence d’écriture de tous les octets spécifiés, une exception est déclenchée. Si vous disposez d’un objet valide CFile
, vous pouvez le lire ou l’écrire comme indiqué dans l’exemple suivant :
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 ) );
}
Remarque
Vous devez normalement effectuer des opérations d’entrée/sortie dans un try
/catch
bloc de gestion des exceptions. Pour plus d’informations, consultez Gestion des exceptions (MFC).