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

C++ Discussion :

Lecture d'un fichier text/ affichage d'un tableau de données


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut Lecture d'un fichier text/ affichage d'un tableau de données
    Bonjour,

    Voici ce que je souhaiterais faire :


    J'ai un fichier text comportant des données relatifs à une classe : supposons par exemple que je possède une classe Personne, et que j'ai un fichier qui contient toutes les peronnes (repérée par un numéro d'identifiant) en lignes avec l'ensemble de leur attributs an colonne séparés par espace par exemple (pour le moment je ne connais pas encore la structure exacte de mon document !) ...

    Ce que j'aimerais faire : c écrire une fonction qui va me pemettre de lire mon document (ça je sais faire) ensuite pour chaque ligne (donc pour chaque personne) j'instancie un nouvel objet de ma classe Personne ... et ensuite je mets chaque objet dans un tableau a deux dimensions où la ligne correspond à un objet de ma classe Personne et les colonnes vont correspondre aux attributs de mes objets de la classe Personne.


    Je vous remercie !

  2. #2
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    J'ai pas très bien compris, pourquoi as-tu besoin d'un tableau à deux dimensions ? Pourquoi les données ne sont pas directement dans les instances de la classe Personne ? Un tableau de Personne ne suffit-il pas ?

  3. #3
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Tout à fait d'accord avec PRomu@ld : pourquoi ne pas faire directement un tableau de Personne ?

    En fait, un std::vector< Personne > suffirait amplement. Si tu as des classes qui héritent de Personne, il te faudra alors un std::vector < Personne* > par exemple. (il y a des solutions bien plus pratiques mais qui risquent d'être un poil plus complexe, selon ton niveau)

  4. #4
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    Non je suis d'accord avec vous !

    Ce n'est pas vraiment la peine de faire un tableau a deux dimensions un vecteur de pointeur suffirait c juste que je souhiaterais faire ensuite des manipulation sur l'ensemble des attribits de la classe personne, par exemple : faire la somme des ages de chaque personne et je pnsais qu'en créant un tableau c t plus simple de sonner les colonnes séléctionnées ...

  5. #5
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Pas du tout
    std::accumulate ou std::foreach avec un foncteur créé par tes blanches mains sera beaucoup plus élégant, maintenable et pratique !

  6. #6
    Membre confirmé
    Inscrit en
    Mars 2006
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 109
    Par défaut
    ok merci !

    supposons que mon fichier contient plusieurs personnes en lignes séparées par des esapaces et en colonne les caractéristiques de ces personnes, séparées par des espaces aussi, le ts dans un fichier .text


    je souhaiterais lire mon fichier.

    est il suffisant d'écrire 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
    20
     
     
    int id;
     
    int age;
     
    string nom; 
     
    string prenom;
     
    tant que le fin de fichier n'est pas encore arrivé 
     
     
    {
     
    fichier>>id>>ag>>nom>>prenom;
     
    suite du code .....
     
    }

    est ce qu'il va parcourir ts le fichier ou pas ????

Discussions similaires

  1. Lecture d'un fichier texte et affichage dans flash
    Par TaleMaker dans le forum Flash
    Réponses: 2
    Dernier message: 29/04/2010, 12h18
  2. lecture d'un fichier texte
    Par benahpets dans le forum MFC
    Réponses: 5
    Dernier message: 22/06/2005, 11h50
  3. [C#] Lecture d'un fichier texte (farfelu)
    Par choas dans le forum Windows Forms
    Réponses: 3
    Dernier message: 11/04/2005, 14h33
  4. Lecture d'un fichier Texte
    Par jcharles dans le forum Bases de données
    Réponses: 8
    Dernier message: 27/10/2004, 14h58
  5. Stockage de données & lecture d'un fichier texte
    Par petitours dans le forum C++Builder
    Réponses: 6
    Dernier message: 13/03/2004, 14h05

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