bonjour,
j'ai un petit truc qui me bloque,
je veux éliminer du fichier texte in les mots qui existent dans le fichier texte motvide et mettre le résultat dans le fichier texte out.
ce code me permet de le faire sauf pour le premier mot du texte in qui n'ai pas traité (c'est à dire si c'est un mot vide il n'est pas supprimé)
j'espère que quelqu'un peut m'aider à trouver la cause.
#include
#include <fstream>
#include <string>
#include <list>
#include
void compare()
{
int i 0, num_ligne 0;
ifstream ifs("in.txt") ;
ofstream ofs("out.txt");
std::string s;
std::list<std::string> ma_liste;
ifstream entree ("motvide.txt");
std::string mot;
while (entree >> mot)
ma_liste.push_back(mot);
while (ifs >> s)
{std::list<std::string>::const_iterator
lit (ma_liste.begin()),
lend(ma_liste.end());
for(;lit!=lend;++lit)
{
if ( s == *lit)
{
i = 1;
break;
}
}
if (i!=1)
ofs << s << " ";
i=0;
}
}
int main()
{
compare();
return 0;
}