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
|
...
char filesourc[80];
char *buffer;
long taille;
...
cout << "\n Nom du fichier (avec l\'extension) : ";
cin >> filesourc;
...
fstream fsourc(filesourc, ios::in|ios::binary); // Ouvrir en écriture
if (fsourc.good()) // teste l'existence du fichier
{
pos = fsourc.tellg(); // sauvegarder la position courante
fsourc.seekg(0 , ios_base::end ); // se placer en fin de fichier
taille = fsourc.tellg() ; // récupérer la nouvelle position = la taille du fichier
fsourc.seekg(pos, ios_base::beg ); // restaurer la position initiale du fichier
buffer = new char [taille]; // alloue la memoire de la taille du fichier
fsourc.read (buffer, taille); // met tout le fichier dans le buffer
fsourc.close(); // ferme le fichier source
}
else
{
fsourc.close(); // ferme le fichier source
cout << "\n Ouverture impossible de " << filesourc << " en \202criture. \n ";
cout << "Appuyez sur entr\202e pour revenir menu.";
cin.ignore( numeric_limits<streamsize>::max(), '\n' );
return 0;
} |