Trouver un mot dans un fichier texte [c++]

Résolu/Fermé
Anat94 Messages postés 22 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 7 octobre 2019 - 6 oct. 2019 à 19:52
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 - 10 oct. 2019 à 23:33
Bonjour,
J'ai un fichier texte comprenant plusieurs mot et je souhaite que mon programme me dise si le mot rentré par l'utilisateur est dans ce fichier...
Je pense qu'il faut passer pour un tableau mais je suis totalement perdu....
merci pour votre aide,
Un novice en programmation en c++



Configuration: Windows / Chrome 77.0.3865.90

1 réponse

Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1
6 oct. 2019 à 22:44
Bonsoir,

si ton texte est stocké dans un string, tu peux utiliser la fonction nom_du_string.find( "texte_à_trouver" , position ) pour trouver un caractère ou une chaîne de caractères (et donc un mot) à partir d'une certaine position. Le premier argument est nécessaire, tandis que le second est facultatif.

Si tu as besoin d'informations complémentaires, le site cplusplus.com est très enricgissant!
1
Anat94 Messages postés 22 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 7 octobre 2019
7 oct. 2019 à 19:14
Je ne suis pas obligé de mettre "position"?
0
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1
7 oct. 2019 à 19:15
Non, tu n'es pas obligé; si tu ne le mets pas, la recherche dudit mot s'effectuera depuis le début de ton string.
0
Anat94 Messages postés 22 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 7 octobre 2019
7 oct. 2019 à 19:20
ah parfait et donc je met un
 if (nom_du_string.find( "texte_à_trouver" , position ) ){
   std::cout <<"il y a le mot";
}
else{
   std::cout <<"il y a le mot";
}


sa me dira si le mot est dans le fichier ???
0
Anat94 Messages postés 22 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 7 octobre 2019
7 oct. 2019 à 19:41
Ah c'est bon j'ai réussi voici mon code:

	

while (std::getline(fichier, line))
	{
		if (line == name) {
			std::cout << "Le mot y est";
			break;
		}
		else {
			std::cout << "Le mot n'y est pas";
			break;
		}
	}


Juste je souhaite afficher les accent dans un cout comment on fait?
Par exemple


std::cout <<"peut-être;

0
Voking Messages postés 21 Date d'inscription dimanche 14 avril 2019 Statut Membre Dernière intervention 13 octobre 2019 1 > Anat94 Messages postés 22 Date d'inscription mercredi 14 mars 2018 Statut Membre Dernière intervention 7 octobre 2019
7 oct. 2019 à 22:21
Il n'existe malheureusement pas de bonne méthode - à ma connaissance - pour afficher correctement les accents. Il faut faire sans ou coder en langue étrangère.
0