MapViewOfFile vs SetFilePointer/WriteFile [Résolu]

Signaler
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Bonjour,

J'ai une petite question sur la meilleure manière d'écrire dans un fichier.
J'écris une structure de données dont les première valeurs dépendent de valeurs calculées ensuite, donc parfois je suis obligé d'écrire des zéros puis de faire des SetFilePointer pour revenir en arrière et mettre les bonnes valeurs.
Comme le fichier peut être gros à la fin, je ne peux pas non plus tout garder en mémoire non plus.
Finalement je me demande si je n'aurais pas intéret à mapper mon fichier (je crois que ca sert à ca...).

J'aimerais savoir les avantages et inconvénients de chaque méthode, et notamment si le fait de travailler avec de gros fichiers peut orienter mon choix.

Merci

_____________________________________
Un éditeur de ressources gratuit pour Windows
A voir également:

2 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
30
Exactement le même type de prog que je viens de finir.

Pas eu besoin de filemapping vu que c'est de l'écriture directe.
J'ai mémorisé mes positions pour retour en incrémentant des UINT64 pendant les WriteFile.
Quand besoin, un SetFilePointerEx (FILE_BEGIN) avec une de ces positions et tout va bon.
Retour en fin de fichier SetFilePointer(hfl, 0, 0, FILE_END) si encore à écrire.

ciao...
BruNews, MVP VC++
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
OK c'est comme ca que j'étais parti pour faire donc je vais garder cette méthode.
Merci

_____________________________________
Un éditeur de ressources gratuit pour Windows