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

Collection et Stream Java Discussion :

Liste de Liste !


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 104
    Par défaut Liste de Liste !
    Bonjour

    Je suis bloqué par un truc qui doit etre simple pour les developpeurs chevronnés en java ...
    J'ai une liste nommée FicheInfoXML qui recupere des infos (du type string et integer) d'un fichier XML. Chaque FicheInfoXML est une fiche produit.

    La methode utilisee pour injecter les infos dans ma fiche produit est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FicheInfoXML.add(indice, ValeurRecuperee)
    J'aimerais recuperer une fiche generale qui contient toutes ces fiches !! Mon idee est de creer une autre liste
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    List ToutesLesFiches=new ArrayList();
    .. mais je n'arrive pas à ranger ces fiches comme pour FicheInfoXML !!?!!

    Comment puis je faire pour que chaque fiche FicheInfoXML soient rangées par indice dans ToutesLesFiches ?

    Voici le 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    
        static org.jdom.Document document;
       static Element racine;
       
       static List FicheInfoXML=new ArrayList();
       static List ToutesMesFiches=new ArrayList();
       
       static SAXBuilder sxb = new SAXBuilder();
        
       // Recuperation des champs du fichier XML ouvert
       static void LitXML(){
    	  List ListeFiche = racine.getChildren("FICHE");
              Iterator i = ListeFiche.iterator();
          
          while(i.hasNext())
          {
             Element MonElement = (Element)i.next();
             
             FicheInfoXML.add(0,(String)MonElement.getChild("Type").getText());
             FicheInfoXML.add(1,(String)MonElement.getChild("categorie").getText());
                 FicheInfoXML.add(2,(String)MonElement.getChild("interprete").getText());
                 FicheInfoXML.add(3,(String)MonElement.getChild("titreAlbum").getText());
            
             }
    
            // Ici, j'aimerais ajouter la liste FicheInfoXML dans ma liste ToutesLesFiches !??
    
                      
       }
    Merci pour votre aide !!! Je n'y arrive pas !

  2. #2
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Je t'arrête tout de suite!

    Une liste contenant des choux et des carottes gérées par le positionnement (indice 0 = id, indice 1 = nom, indice 2 = age...), c'est ce qui se faisait avant la POO, mais c'est à proscrire maintenant.

    A la place ta liste, fabrique-toi une classe (un Bean) FicheInfo dont les attributs correspondent aux différentes informations que tu mettais dans ta liste...

    Ensuite, on rediscutera d'une liste de tes fiches (qui a mon avis sera un objet de la classe "Fiches" que tu vas créer... et qui contiendra un attribut listant tes fiches )
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 104
    Par défaut
    Ok CyberChouan (desole, je suis pas un expert en POO mais je me soigne lol).

    Je me suis trompé : ma fiche ne contient QUE des attributs de type String (pas de choux avec des carottes).

    J'ai en effet créé une classe UneFiche qui contient tous les attributs que je recupere de mon fichier XML. Faut il que je nomme absolument tous les attributs un par un, ou puis je quand meme garder mes attributs sous forme de Liste ?

    Voici ma classe :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    static List FicheInfoXML=new ArrayList();
    static Element racine;
     
    UneFiche(Element MonElement){	
        FicheInfoXML.add(0,(String)MonElement.getChild("Type").getText());
        FicheInfoXML.add(1,(String)MonElement.getChild("categorie").getText());
        FicheInfoXML.add(2,(String)MonElement.getChild("interprete").getText());
        FicheInfoXML.add(3,(String)MonElement.getChild("souscat").getText());
    }
    Parce qu'en gardant ca sous forme de liste, j'arrive toujours pas a recuperer ce que je veux ?!

  4. #4
    Rédacteur
    Avatar de CyberChouan
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    2 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 752
    Par défaut
    Franchement, je te suggère plutôt un Bean vu tes besoins.

    Tu t'apercevras vite que ça va simplifier énormément ton code (et le rendre beaucoup plus compréhensible)

    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
     
    public class Fiche {
     
      private String type;
      private String categorie;
      private String interprete;
      private String souscat;
     
      public void setType(String type) { this.type = type; }
      public String getType() { return type; }
      // Autres accesseurs sur le même modèle
     
      public void chargerFicheDepuisElementXML(Element e) {
        setType(e.getChild("Type").getText());
        // invocation des autres setters sur le même modèle
      }
    }
    Avant de poster, pensez à regarder la FAQ, les tutoriaux, la Javadoc (de la JRE que vous utilisez) et à faire une recherche
    Je ne réponds pas aux questions techniques par MP: les forums sont faits pour ça
    Mes articles et tutoriaux & Mon blog informatique

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Juin 2007
    Messages : 104
    Par défaut
    oups, moi pas tout avoir compris (connais pas les Beans) mais je vais me pencher sur la question alors ...

    Merci pour le conseil et les infos en tout cas ...

  6. #6
    Membre expérimenté
    Avatar de vahid
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    228
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 228
    Par défaut
    un bean c est juste un objet qui sert en quelque sort de conteneur

Discussions similaires

  1. Regrouper une liste en liste de listes
    Par West01 dans le forum Prolog
    Réponses: 12
    Dernier message: 14/03/2008, 14h07
  2. Liste de liste?
    Par Bethoring dans le forum C++
    Réponses: 4
    Dernier message: 16/11/2005, 18h19
  3. Liste de listes
    Par SteelBox dans le forum Prolog
    Réponses: 5
    Dernier message: 16/10/2005, 16h21
  4. acceder au n iéme element d'une liste std::list
    Par sorari dans le forum SL & STL
    Réponses: 4
    Dernier message: 23/03/2005, 15h21
  5. [langage] tri avancé, liste de listes
    Par schnecke dans le forum Langage
    Réponses: 6
    Dernier message: 29/03/2004, 14h00

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