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 :

Débutant : fstream -> problème dans mon code?


Sujet :

MFC

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut Débutant : fstream -> problème dans mon code?
    Bonjour,
    Mon but est ouvrir un fichier texte, le parcourir et l'afficher dans une listview. Pour cela, je tente d'utiliser la classe fstream, mais... je ne passe pas le stade de la compil!

    je vous montre mon code, vraiment simplifié au maximum :

    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
    17
     
    // ihmCDPDlg.cpp : implementation file
    //
     
    #include <iostream>
    #include <fstream>
    #include <stdlib.h>
     
    [...]
     
    void CIhmCDPDlg::OpenConfigFile() 
    {
    	ifstream fichier_in; // Fichier en lecture
     
    	fichier_in.open("C:\\config.ini");
     
    }
    et lorsque je compile ca, j'optien :

    error C2065: 'ifstream' : undeclared identifier

    Ai je écrit une bêtise quelque part?
    merci pour votre aide...

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    using namespace std;
    et/ou
    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    std::ifstream fichier_in; // Fichier en lecture
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    arf... toujours pas :

    'std' : does not exist or is not a namespace

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Tu l'as bien mis après l'inclusion des headers ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    oui oui, comme ceci :

    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
    17
    18
    19
     
    // ihmCDPDlg.cpp : implementation file
    //
     
    #include <iostream>
    #include <fstream>
    #include <stdlib.h>
     
    using namespace std;
     
    [...]
     
    void CIhmCDPDlg::OpenConfigFile() 
    {
    	str::ifstream fichier_in; // Fichier en lecture
     
    	fichier_in.open("C:\\config.ini");
     
    }

  6. #6
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Relis attentivement ton code, ou fais-le relire par un ami: C'est une faute de frappe qui cause tes tourments...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    heu.. oui mais non en fait!
    le "str" c'est parce que le l'ai rajouté à la main dans le msg... mais dans le code, j'ai bien mis "std::"
    et maheureusement, j'ai toujours mes erreurs de compil :

    'std' : does not exist or is not a namespace
    'std' : is not a class or namespace name
    'ifstream' : undeclared identifier


    j'aurai tout de meme préféré que tu ai raison!!

  8. #8
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    Bonjour,

    je suis désolée d'insister mais... parsonne n'aurait une idée? je suis vraiment bloquée, je suis en autoformation et je n'ai personne vers qui me tourner dans mon entourage!

    merci.

  9. #9
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Vérifie que tu as un compilateur assez récent, et poste un copier-coller direct et non trafiqué de ton code complet...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  10. #10
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    Promis, je ne "trafiquerai" plus mon code à l'avenir...
    je n'ai pas trouvé comment vérifier la version de mon compilateur... Mais j'utilise visual C++ 6.0.
    C'est lié au compilo ou complètement indépendant?

  11. #11
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 369
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 369
    Points : 41 519
    Points
    41 519
    Par défaut
    Avec VC++ 6.0, je ne pense pas qu'on puisse utiliser un autre compilateur que celui livré avec.
    Le SDK est peut-être également trop vieux. Il parait que le dernier SDK supporté par Visual 6 est celui de Février 2003, télécharge-le si tu n'en a pas téléchargé de nouveau..
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  12. #12
    Membre actif Avatar de Rupella
    Inscrit en
    Février 2005
    Messages
    286
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 286
    Points : 257
    Points
    257
    Par défaut
    si tu utilises
    pkoi ajouter std:: à ifsteam ?

  13. #13
    Nouveau membre du Club
    Inscrit en
    Octobre 2006
    Messages
    44
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 44
    Points : 26
    Points
    26
    Par défaut
    Je suis dégoutée!
    en fait, il suffisait d'inverser l'ordre des includes...
    la raison m'echappe, mais si quelqu'un à une explication à donner, je suis preneuse!

    rupella -> c'est vrai, normalement, c'est soit l'un soit l'autre. Mais ca, je l'ai appris apres avoir écrit le msge...

    merci à tous!

  14. #14
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    55
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 55
    Points : 72
    Points
    72
    Par défaut
    Si tu utilises les MFC alors utilise les jusqu'au bout!
    en l'occurence l'objet MFC pour manipuler les fichier et CFile.
    got root?

Discussions similaires

  1. [Débutant] Problème dans mon code
    Par Mainopposee dans le forum Langage
    Réponses: 2
    Dernier message: 23/10/2009, 21h07
  2. [débutant] Un petit problème avec mon code
    Par Muesko dans le forum Débuter
    Réponses: 3
    Dernier message: 28/08/2008, 17h12
  3. Réponses: 3
    Dernier message: 15/03/2008, 15h15
  4. Problème dans mon code
    Par curro dans le forum Débuter
    Réponses: 14
    Dernier message: 29/08/2007, 01h46
  5. Réponses: 2
    Dernier message: 03/05/2007, 09h00

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