Bonjour à tous,
Malgré mes recherches sur google, je n'ai pas réussi à trouver la solution à mon problème.
Je viens donc vous demander de l'aide concernant le programme que j'ai créé.
Je tiens à préciser que je suis codeur depuis seulement 1 an donc mon code sera un peu sale...
Donc en fait mon programme il prend un fichier .txt, va chercher toutes les adresses mails et les mets dans un autre fichier .txt sous le format
kikou@toto.com
s0nyk@toto.com
tata@koko.com
Cela me permet de l'importer plus facilement dans un fichier excel.
Cela fonctionne bien sur un petit fichier mais j'ai testé sur un très grand fichier et cela m'a donné l'erreur : Exception non gérée à 0x74c9b727 dans stage_fichier_contacts.exe*: Exception Microsoft C++*: std::out_of_range à l'emplacement mémoire 0x0039f778..
EDIT : bon apparement ce n'est pas la longueur du fichier, car j'ai testé avec un fichier carrément plus long et ça a fonctionné.
Le fichier qui pose problème est en fait un "copier coller" d'un fichier PDF, si ça peut aider...
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 void lireFichier(){ ifstream fichier("entreprise.txt"); // on ouvre le fichier en lecture if(fichier) // si l'ouverture a réussi { string ligne; //variable ligne de type string qui permettra de stocker la chaine de caractère bool ok=false; while (getline(fichier, ligne)) // tant qu'on est pas à la fin du fichier, on lit ligne par ligne. { while(ligne != "") // tant qu'on est pas à la fin de la ligne { string mot; mot = extraitMot(ligne); // cela met le premier mot de la ligne dans la variable mot mot = suppressionCaractere(mot); //ici on supprime les caractères inutils tel que ?, !, :, ; etc... if (estUneAdresseEmail(mot)) { string const nomFichier("adresseEntreprise.txt"); ofstream monFlux(nomFichier.c_str(), ios::app); if(monFlux) { monFlux << mot << endl; } else { cout << "ERREUR: Impossible d'ouvrir le fichier." << endl; } } } } fichier.close(); // on ferme le fichier } else // sinon on met un message d'erreur cout << "Impossible d'ouvrir le fichier !" << endl; }
J'espère que quelqu'un pourra m'aider, je vous remercie d'avance.
N'hésitez pas à me poser des questions si je n'ai pas été assez clair.
Partager