Récupérer des mots d'un txt et les manipuler
Ark
-
Ark -
Ark -
Bonjour à tous :)
Je souhaiterai ouvrir un fichier texte (programmeEtape4.txt) et lire les lignes une à une. Pour chaque ligne, j'aimerai séparer les mots (ce que je fais à l'aide de la fonction strtok) et les écrire un par un avec un retour à la ligne dans le fichier traduction.
Ca vous parrait sans doute très bête et sans intérêt, mais ce n'est pas la finalité de la chose en réalité. J'ai fais un bout de code qui marche avec le strtok et le getline mais uniquement séparément (si je met en commentaire le while avec le getline et que j'initialise le str[] avec une chaine quelconque comme "salut copain", et dans le cas du getline seul, si je ne fais que recopier le contenu de programmeEtape4 dans traducteur ligne par ligne).
Donc mon soucis, comment les faire fonctionner ensemble, main dans la main en douce harmonie ?
Le soucis ici est un probleme de conversion de void* à char** mais comme ça, ça me parle pas trop...
Si vous avez une idée de modification de mon code qui pourrait marcher, ou m'en proposer carrément un autre, n'hésitez pas, je suis preneur !
Merci d'avance pour votre aide, les ainés ;)
Ark
PS : voici le code, ca peut aider :D
fstream traduction("traduction.txt",ios_base::in|ios_base::out|ios_base::trunc);
std::ifstream fichier( "programmeEtape4.txt" );
char*mot;
char str[]= " ";
if ( fichier ) // ce test échoue si le fichier n'est pas ouvert
{
while ( getline(fichier,str) )// cette boucle s'arrête dès qu'une erreur de lecture survient
{
mot=strtok(str," \n\r\0");
while(mot)
{
traduction << mot << endl;
mot=strtok(NULL," \n\r\0");
}
}
}
traduction.close();
Je souhaiterai ouvrir un fichier texte (programmeEtape4.txt) et lire les lignes une à une. Pour chaque ligne, j'aimerai séparer les mots (ce que je fais à l'aide de la fonction strtok) et les écrire un par un avec un retour à la ligne dans le fichier traduction.
Ca vous parrait sans doute très bête et sans intérêt, mais ce n'est pas la finalité de la chose en réalité. J'ai fais un bout de code qui marche avec le strtok et le getline mais uniquement séparément (si je met en commentaire le while avec le getline et que j'initialise le str[] avec une chaine quelconque comme "salut copain", et dans le cas du getline seul, si je ne fais que recopier le contenu de programmeEtape4 dans traducteur ligne par ligne).
Donc mon soucis, comment les faire fonctionner ensemble, main dans la main en douce harmonie ?
Le soucis ici est un probleme de conversion de void* à char** mais comme ça, ça me parle pas trop...
Si vous avez une idée de modification de mon code qui pourrait marcher, ou m'en proposer carrément un autre, n'hésitez pas, je suis preneur !
Merci d'avance pour votre aide, les ainés ;)
Ark
PS : voici le code, ca peut aider :D
fstream traduction("traduction.txt",ios_base::in|ios_base::out|ios_base::trunc);
std::ifstream fichier( "programmeEtape4.txt" );
char*mot;
char str[]= " ";
if ( fichier ) // ce test échoue si le fichier n'est pas ouvert
{
while ( getline(fichier,str) )// cette boucle s'arrête dès qu'une erreur de lecture survient
{
mot=strtok(str," \n\r\0");
while(mot)
{
traduction << mot << endl;
mot=strtok(NULL," \n\r\0");
}
}
}
traduction.close();
Configuration: Linux Firefox 3.0.5
A voir également:
- Récupérer des mots d'un txt et les manipuler
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment récupérer un compte facebook piraté - Guide
- Récupérer compte yahoo sans numéro de téléphone - Guide
- Comment récupérer un compte facebook désactivé - Guide
- Où sont stockés les mots de passe sur android - Guide