salut
j'ai un fichier .csv qui contient 27000 ligne et je veux suprrimer les ligne 4,5,6
�a fonction avec le code que j'ai mais �a prend presque 2min pour s'ex�cut�
y'a t'il unmoyenne pour minimiser le temps de l'execution

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
 
#include <string> 
#include <fstream> 
 
void Erase_Line1(char* z, int Line_to_Erase) 
{ 
std::string Buffer = ""; //Variable contenant le texte à réécrire dans le fichier 
std::ifstream ReadFile( z); 
if (ReadFile) //Si le fichier est trouvé 
{ 
std::string line; 
int Line = 0; 
while ( std::getline( ReadFile, line ) ) //on parcours le fichier et on initialise line à la ligne actuelle 
{ 
Line++; 
if(Line != Line_to_Erase) //Si la ligne atteinte est différente de la ligne à supprimer... 
Buffer += line + "\n"; //On ajoute le contenu de la ligne dans le contenu à réécrire 
} 
} 
ReadFile.close(); //On ferme le fichier en lecture 
 
std::ofstream WriteFile( z); //On ouvre ce même fichier en écriture 
WriteFile << Buffer; //On écris le texte dedans 
WriteFile.close(); //et on ferme le fichier 
} 
 
int main() 
{ 
Erase_Line1("z.txt", 4); 
Erase_Line1("z.txt", 4); 
Erase_Line1("z.txt", 4); 
 
return 0; 
}