Pour lire une ligne d'un fichier texte (complète ou jusqu'a un caractère précis) vous pouvez utiliser les formats de lecture prédéfinis de la fonction scanf suivants:
- %[] ->tous les caractères entre [ et ] et seulement ceux là
- %[^] ->tous les carctères jusqu'a ceux entre [^et ]
Ceci inclutt les espaces!!!
Pour les débutants scanf() nécessite la bibliothèque <stdio.h>.
Source / Exemple :
Ex:
Pour lire le ligne suivante jusqu'au @:
"bvdyivgfss@fgfdgdt"
scanf("%[^@]",votre variable);
- Pour la lire en entier
scanf("%[^\n]",votre variable);
- Pour lire avant le @ puis après
scanf("%[^@]%[@]%[^\n]",variable1,variable2,variable3);
Conclusion :
Ces exemples sont très simplifiés et ne sont qu'une manière de faire mais ils sont là pour rappeler que des fois il existe des outils déja crées au lieu de se casser la tête.
Pour plus d'infos reportez vous à la description du scanf().
24 sept. 2006 à 02:30
vous venez de me sauver la vie ;-)
2 mars 2006 à 18:07
Si vous pouvez juste me donner une adresse ou je peux trouver des explications clair cela me suffira.
Je ne connais pas : std::istream::getline
Et est-ce que je dois utiliser une boucle pour lire chaque ligne?
Voici le type de fichier que je dois lire et modifier.
2006 044.65785523900 +090.0000 +049.9998
2006 044.65785581770 +090.0000 +050.0000
2006 044.65785639641 +089.9999 +050.0000
2006 044.65785697511 +090.0001 +049.9996
2006 044.65785755381 +090.0000 +050.0000
2006 044.65785813252 +089.9999 +049.9997
Merci pour votre aide et vos renseignements
7 févr. 2004 à 18:23
9 déc. 2003 à 14:03
std::istream::getline
2 déc. 2003 à 11:10
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.