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();
A voir également:
- Récupérer des mots d'un txt et les manipuler
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Comment récupérer un compte facebook piraté - Guide
- Récupérer mon compte facebook désactivé - Guide
- Comment récupérer un compte yahoo sans mot de passe - Guide
- Comment recuperer une video sur youtube - Guide