1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
|
void testParccourirModifier()
{
//*************************************************
// Ouvrir et Mapper le fichier en mémoire
//*************************************************
HFILE grosFichierHandler;
grosFichierHandler = OpenFile((LPCSTR) CHEMIN_GROS_FICHIER.c_str(),&structure,OF_READWRITE);
HANDLE fichierMappe;
fichierMappe = CreateFileMapping((HANDLE)grosFichierHandler,NULL,PAGE_READWRITE | SEC_COMMIT,0,0,NULL);
// Pour chaque bloc
for(unsigned int i=0; i<NB_BLOCS; i++)
{
// Récupérer le bloc dans un buffer
char * buff = (char * )MapViewOfFile(fichierMappe,FILE_MAP_WRITE,0,i*TAILLE_BLOCS,TAILLE_BLOCS);
//afficherBloc(buff,TAILLE_BLOCS);
for(unsigned int j=0; j<TAILLE_BLOCS; j++)
{
buff[j] = buff[j]+1;
}
// Mettre a jour le disque dur
UnmapViewOfFile(buff);
}
CloseHandle(fichierMappe);
CloseHandle((HANDLE)grosFichierHandler);
double tempsEcoule = difftime ( tempsArrivee ,tempsDepart );
} |
Partager