Bonjour, j'ai un problème pour ouvrir un fichier en écriture... le programme m'envoie au else et m'affiche "Ouverture impossible ...", j'ai essayer avec une image ".png", un fichier ".txt", même résultat..
De plus le prog n'attends pas que j’appuie sur une touche et quitte.
Est-ce que j'emploie mal "cin.ignore" ???
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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; }
Partager