IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

lire un fichier texte puis sauvegardé les valeurs dans un ba


Sujet :

MFC

  1. #1
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut lire un fichier texte puis sauvegardé les valeurs dans un ba
    Enfait j'aimerais pouvoir lire un fichier texte
    puis récupérer les valeurs du fichier texte pour les enregistrer dans une base de donnée access.

    je code sous visual c++.net
    merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Tant que tun ne montreras pas un début de code, tu n'auras pas de réponse.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  3. #3
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Pour la lecture, utilise System::IO::StreamReader, avec une recherche sur streamReader, tu devrais trouver un exemple

  4. #4
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    voici mon début de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    //Création du fichier output.txt
     FileStream* fs = new FileStream("C:\\output.txt", FileMode::Create);
     
     //Ecrit des caractéres dans un flux d'octets
     StreamWriter* sw = new StreamWriter(fs);
     
    //Ecrit dans le fichier
    sw->WriteLine("rr");
    sw->WriteLine("ff");
    sw->Flush();
     sw->Close();
     
     StreamReader* sr = new StreamReader(fs);
     
    String* ligne = sr->ReadLine();
    mais après je ne sais pas comment faire pour enregistrer dans la base de donnée.
    avec ce code je n'ai pas d'erreur mais est il bon ?

    j'ai aussi essayer d'afficher les valeurs lu dans une messageBox mais rien ne s'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
       MessageBox::Show(ligne,"dd");
    merci pour vos réponse


  5. #5
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    tu as essayé de suivre pas à pas en debug ? ca donne quoi ? le fichier est bien créé ? c'est la relecture qui ne passe pas ?

  6. #6
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    enfait le truc c'est que sa ne bugue pas mais dans ma messageBox il ne m'affiche rien mais je n'ai pas d'erreur.

    mais quand je vais voir le fichier il est quand meme bien créer avec les données dedans...

  7. #7
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    sans regarder plus loin, je dirais que la lecture échoue, vu que tu utilises un filestream initialié à Create au lieu de open

  8. #8
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    a merci en effet ça marche !!
    ca fait vraiment plaisir surtout qu'il y a un moment que je cherché mon erreur...

    et enfait mon autre probleme était de savoir comment mettre donc ces donnée dans ma base de donnée ??

    merci pour ton aide encore une fois

  9. #9
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Tu peux utiliser ADO.Net

  10. #10
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    ok je vais aller voir cette méthode.

    et juste une derniere chose comment je fait afficher a ma messageBox les différentes lignes de mon fichier parce que jai essayé avec une boucle while mais enfait sa me bloque le programme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    while (sr->Peek() >= 0) {
     
    MessageBox::Show(ligne,"dd");
     
    	                     }
    merki

  11. #11
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    teste plutot le retour de readline
    genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    ligne = sr->ReadLine();
    while (Compare::String(ligne, ""))
    {
          ligne = sr->ReadLine();
    }
    A vérifier

  12. #12
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    non ça n'a pas l'air de marcher,
    il ne comprend pas le Compare.
    mais enfin c'est pas grave merci en tout cas pour ton aide

  13. #13
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Désolé, c'était l'inverse String::Compare

    mais je viens de m'apercevoir que c'est une mauvaise idée. Il vaut mieux comparer quand à la validité de ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    String * ligne = s->ReadLine();
    while (ligne)
    	ligne = s->ReadLine();

  14. #14
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    Oui sa marche comme ça mais l'inconvénient est que la première donnée n'est prise en compte:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (ligne){
                 ligne = sr->ReadLine();
    					MessageBox::Show(ligne,"dd");
       	}
    si mes valeurs dans mon fichier sont :
    1
    2
    3

    Lorsque j'affiche ma messageBox il va m'indiquer 2, puis 3, il ne commence pas du 1.

    faut-il l'indiquer dans le while ??

  15. #15
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Peut-être qu'en intervertissant les instructions d'affichage et de lecture....
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  16. #16
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    c'est dur l'informatique ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    String * ligne = s->ReadLine();
    MessageBox::Show(ligne,"dd");
    while (ligne)
    {
       ligne = s->ReadLine();
       MessageBox::Show(ligne,"dd");
    }
    Il faut bien sur appeller messagebox après chaque lecture ...

  17. #17
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Grillé
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  18. #18
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Points : 16 075
    Points
    16 075
    Par défaut
    Citation Envoyé par Trap D
    Peut-être qu'en intervertissant les instructions d'affichage et de lecture....
    ouais, mais dans ce cas, tu rates la dernière ligne

  19. #19
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    46
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 46
    Points : 20
    Points
    20
    Par défaut
    A oui !!

    en effet sa marche très bien !!

    donc un grand merçi a vous deux et ça fait vraiment plaisir d'avoir de l'aide comme ça et aussi rapide.
    merci beaucoup en tout cas!!

    pour ma part je vais continué a codé et encore merci pour tout les gars.

    à la prochaine.
    @+

  20. #20
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Points : 6 498
    Points
    6 498
    Par défaut
    Citation Envoyé par nico-pyright(c)
    Citation Envoyé par Trap D
    Peut-être qu'en intervertissant les instructions d'affichage et de lecture....
    ouais, mais dans ce cas, tu rates la dernière ligne
    Ah bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    while (ligne){
                   MessageBox::Show(ligne,"dd");
                 ligne = sr->ReadLine();
          }
    Tu en es sûr : : :
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

Discussions similaires

  1. Lire un fichier XML et récupérer les valeurs d'attribut
    Par dinaing dans le forum Format d'échange (XML, JSON...)
    Réponses: 10
    Dernier message: 18/06/2010, 15h53
  2. Réponses: 9
    Dernier message: 02/06/2009, 15h37
  3. Réponses: 5
    Dernier message: 06/08/2008, 16h24
  4. lire un fichier texte et separer les colonnes
    Par turk93390 dans le forum Framework .NET
    Réponses: 2
    Dernier message: 29/12/2006, 13h20
  5. Lire un fichier Excel pour modifier les valeurs des cellules
    Par Paloma dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/10/2006, 15h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo