Partager via


Recommandations relatives à la gestion des entrées/sorties

L’utilisation d’E/S basées sur des fichiers dépend de la façon dont vous répondez aux questions dans l’arbre de décision suivant :

Les données primaires de votre application résident-elles dans un fichier de disque

  • Oui, les données principales résident dans un fichier sur disque :

    L’application lit-elle le fichier entier en mémoire sur fichier ouvert et réécrit le fichier entier sur le disque sur l’enregistrement de fichier

    • Oui, c'est le cas par défaut des documents MFC. Utilisez CDocument la sérialisation.

    • Non, c'est généralement le cas de la mise à jour basée sur des transactions du fichier. Vous mettez à jour le fichier par transaction et n’avez pas besoin CDocument de sérialisation.

  • Non, les données principales ne résident pas dans un fichier sur disque :

    Les données résident-elles dans une source de données ODBC

    • Oui, les données résident dans une source de données ODBC :

      Utilisez la prise en charge de la base de données de MFC. L’implémentation MFC standard pour ce cas inclut un CDatabase objet, comme décrit dans l’article MFC : Utilisation de classes de base de données avec documents et vues. L’application peut également lire et écrire un fichier auxiliaire , l’objectif de l’Assistant Application « à la fois une vue de base de données et une prise en charge des fichiers ». Dans ce cas, vous utiliseriez la sérialisation pour le fichier auxiliaire.

    • Non, les données ne résident pas dans une source de données ODBC.

      Exemples de ce cas : les données résident dans un SGBD non ODBC ; les données sont lues via un autre mécanisme, tel que OLE ou DDE.

      Dans ce cas, vous n’utiliserez pas la sérialisation et votre application n’aura pas d’éléments de menu Ouvrir et Enregistrer. Vous pouvez toujours utiliser une CDocument base d’accueil, tout comme une application ODBC MFC utilise le document pour stocker CRecordset des objets. Toutefois, vous n’utiliserez pas la sérialisation par défaut du fichier ouvert/enregistrer le document de l’infrastructure.

Pour prendre en charge les commandes Ouvrir, Enregistrer et Enregistrer sous du menu Fichier, le framework fournit la sérialisation de document. La sérialisation lit et écrit des données, y compris les objets dérivés de la classe CObject, dans le stockage permanent, normalement un fichier sur disque. La sérialisation est facile à utiliser et répond à plusieurs de vos besoins, mais elle peut être inappropriée dans de nombreuses applications d'accès aux données. Les applications d’accès aux données mettent généralement à jour les données pour chaque transaction. Elles mettent à jour les enregistrements concernés par la transaction au lieu de lire et d'écrire un fichier de données entier en une seule fois.

Pour plus d’informations sur la sérialisation, consultez Sérialisation.

Voir aussi

Sérialisation : sérialisation et entrée/sortie de la base de données