J'ai fait ce programme, mais lorsque je le compile, j'obtiens une erreur dans les boucles FOR. Pourriez-vous m'aider s.v.p.?
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63 //Programme qui encrypte/décrypte nimporte quel type de fichier à laide dune clé de 128 bits //(en utilisant lopérateur OU EXCLUSIF binaire.) #include "stdafx.h" #include <string> #include <fstream> #include <iostream> using namespace std; void main() { char tabCles[] = "s&kLh±8y.éA$md;O"; //La clé de 16 octets int intNbCar=0; //Initialisation du nombre des caracteres contenu dans le text a encrypte/décrypte string strNomFichier; cout<<"Veuillez entrez le nom du fichier: "; getline(cin,strNomFichier,'\n'); ifstream entree; entree.open(strNomFichier.c_str(), ios::in|ios::binary); if(!entree.is_open()){ //Fichier non ouvert cout<<endl; cout<<"Impossible d'ouvrir le fichier "<<strNomFichier<<" en lecture."<<endl; cout<<"Veuillez verifier l'accessibilite de ce fichier et relancer l'application."<<endl; cout<<endl; } else{ //Pour trouver le nombre de caracteres du fichier entree.seekg (0, ios::end); intNbCar = entree.tellg(); entree.seekg (0, ios::beg); //Pour pouvoir avoir le contenu du fichier dans la variable: contenuFichier char* contenuFichier; contenuFichier = new char [intNbCar]; entree.read(contenuFichier, intNbCar); for(int i=0; i<intNbCar; i++){ for(int j=0; j<16; j++){ contenuFichier[16*i+j]^=tabCles[j]; } } entree.close(); //Nous n'avons plus besoin du fichier en lecture //Le contenu du fichier est mainteant dans la variable contenuFichier ofstream sortie; sortie.open(strNomFichier.c_str(), ios::out|ios::binary); if(!sortie.is_open()){ //Fichier non ouvert cout<<endl; cout<<"Impossible d'ouvrir le fichier " <<strNomFichier<<" en ecriture."<<endl; cout<<"Veuillez verifier l'accessibilite de ce fichier et relancer l'application."<<endl; cout<<endl; } else{ sortie.write(contenuFichier, intNbCar); sortie.close(); //Nous n'avons plus besoin du fichier en ecriture } delete[] contenuFichier;//Pour liberer la memoire } }
Partager