Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : c++ urgence svp [ Divers / Général ] (yanlou)

lundi 7 juillet 2008 à 11:00:03 | c++ urgence svp

yanlou



maximus
salut,
j'ai u fichier txt qui contient des chaine de caracté, exemple :

RFRPAD7
RFRPAD8/A8
CDXRTD3/A3
FGDTRE2
ATZRSD5/A5

bon voila le code que j'ai mais ça donne pas le resultat que je veux obtenir.
ça donne un truc commça :

RFRPAD7 RFRPAD7
RFRPAD8 A8
CDXRTD3 A3
FGDTRE2 FGDTRE2
ATZRSD5 A5

maximus #include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
 
    ifstream fichier("slash.txt");
    if (fichier)
    {
        string ligne;
       
        while (getline(fichier,ligne))
        {
               
            size_t pos=ligne.find_first_of("-");
            string sousligne1=ligne.substr(0,pos);

   string sousligne2=ligne.substr(pos+1);
           
   cout<< sousligne1 << " " << sousligne2 << endl;
        }
    }
    fichier.close();
}

mais sais pas ce que je veux avoir comme resultat
le resultat que je cherche c'esyt ça :

RFRPAD7
RFRPAD8
RFRPAA8
CDXRTD3
CDXRTA3
FGDTRE2
ATZRSD5
ATZRSA5

lundi 7 juillet 2008 à 12:26:05 | Re : c++ urgence svp

laurent1024

Bonjour, tu es proche du résultat, faut juste rajouter des tests :
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
 
    ifstream fichier("slash.txt");
    if (fichier)
    {
        string ligne;
       
        while (getline(fichier,ligne))
        {
               
            size_t pos=ligne.find_first_of("-");
            if (pos == ligne.length()) { // pas de caractere  -
                cout << ligne;
            }

            else {
            string sousligne1=ligne.substr(0,pos);
            string sousligne2=ligne.substr(pos+1);
            string res = sousligne1.substr(0, pos-3) + sousligne2; // gestion des 2 lignes
   cout<< sousligne1 << endl << res << sousligne2 << endl;
}
        }
    }
    fichier.close();
}

lundi 7 juillet 2008 à 12:52:56 | Re : c++ urgence svp

yanlou


Bonjour,
j'ai un fichier txt, avec ce code j'obtien pour une chaine comme ça

AFRZSA2-D2
ADDSEA3

le resultat

AFRZSA2 AFRZSD2
ADDSEA3 ADDSEA3 // je veux pas que cette chaine ce double je veux avoir ADDSEA3 ça doit se fair avec une boucle mais j'arrive pas de le faire !!

mon code :

#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{

ifstream fichier("slash.txt");

if (fichier)
{
string ligne;


while (getline(fichier,ligne))
{

size_t pos=ligne.find_first_of("-");


string sousligne1=ligne.substr(0,pos);


string sousligne2=ligne.substr(pos+1);

string sousligne3=sousligne1.substr(0,sousligne1.size()-2).append(sousligne2);


cout<< sousligne1 << " " << sousligne3 << endl;

}
}

fichier.close();
}
maximus

lundi 7 juillet 2008 à 13:30:40 | Re : c++ urgence svp

laurent1024

Bonjour.
Rajoute un test :
if (sousligne1 == sousligne3) {
cout << sousligne1 << endl;
}
else {
 cout<< sousligne1 << " " << sousligne3 << endl;
}

lundi 7 juillet 2008 à 13:36:49 | Re : c++ urgence svp

yanlou

merçi mais, ça donne tjr le meme resultat !!
maximus

lundi 7 juillet 2008 à 13:41:12 | Re : c++ urgence svp

laurent1024

Il faut peut etre vérifier le tests, peut être quand dans l'un des cas tu as un caractère non affichable en plus qui fait que le test ne fonctionne pas correctement.
Cdt

lundi 7 juillet 2008 à 13:48:29 | Re : c++ urgence svp
lundi 7 juillet 2008 à 14:17:06 | Re : c++ urgence svp

yanlou

Réponse acceptée !
j'ai esséyé avec ce test mais ça me donne tjr le meme resultat

if (sousligne1.compare(sousligne3))
    {
    cout<< sousligne1 << " " << sousligne3 << endl;
    }
    else
    {
    cout << sousligne1 << endl;
    }
maximus

lundi 7 juillet 2008 à 14:21:14 | Re : c++ urgence svp

buno

Bon, ok...
JE vois que mes explications ne te conviennent pas...
C'est dommage d'ouvrir plusieurs topic pour le même sujet...
C'est encore plus dommage de ne pas savoir chercher par soi-même...

Je te souhaite bien du courage pour la suite...

Buno
----------------------------------------
L'urgent est fait, l'impossible est en cours. Pour les miracles, prévoir un délai...
Le site de mon mariage

lundi 7 juillet 2008 à 14:22:05 | Re : c++ urgence svp

laurent1024

Que te retourne compare sousligne1.compare(sousligne3) quand il on "theoriquement" la meme valeur ?


1 2

Cette discussion est classé dans : fichier, ligne, string, include, pos


Répondre à ce message

Sujets en rapport avec ce message

Lecture fichier ini avec GetProfileString [ par PsyCaDi ] Bonjour,Je suis en train de faire un petit code et j'aimerai enregsitrer mes paramètres dans un fichier ini.Mais j'ai quelques problèmes (car je suis Lecture d'un fichier et affichage de balises [ par SpiritAnghell ] Bonjour;Le programme suivant est censé extraire les balises d'un fichier xml et les afficher une par une:#include #include #include #include #include Lecture fichier texte en c++ builder ( débutant ) [ par m1b ] Hello, Je sais il y a beaucoup  de post sur la lecture des fichiers textes, je les ai lus mais je n'ai pas réussi à m'en sortir... ( je suis débutant Probleme ASCII et coonversion string vers char (enfin je pense) [ par Leptis ] Salut a tous les pgm qu'il y a sur ce site. Avant tout je tien à vous prévenir que je suis en gros newbie en C.Voila mon problème : je cherche à faire Bug identificateur introuvable ? [ par FeelCode ] hello j'ai une erreur qulque peux bizzard, voici le rapport du compilateur Visual studio 2005 ------ Début de la génération : Projet : ConsolC, Confi les class [ par snpier wolf ] bonjour voila j'ais commancer un peux a programmé avec les class.et j'ais un problème que je n'arrive pas à résoudre.voila le bou de codeclass command ecrire dans un fichier [ par guiillt ] Bonjour,j'aimerai lire un fichier ligne par ligne et ensuite ecrire ces lignes dans une autre fichier,le probleme c'est qu'il ecrase systematiquement à l'aide pour fusioné la fonction getline + fct strtok [ par yanlou ] salut,voici mon problmé, je veux lire un fichier txt, je le fais avec la fonction getline. voici le code :#include #include #include int main(){    Chercher un string dans un fichier texte ? [ par chtitpierre78 ] Bonjour,Je développe actuellement un outils en C++ (VisualC++) qui me permet de comparer 2 fichiers textes (.txt) d'environ 4Mo chacun (soit environ 6 Recuperer PID de l'appli et ecrire dans un fichier [ par Metalbobinou ] Bonsoir,Alors voila, vu que j'ai du mal en C, et que cela va etre necessaire que j'en fasse pour mes etudes, j'ai decide de m'y mettre.J'ai voulu fair


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,250 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.