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

Format d'échange (XML, JSON...) Java Discussion :

[XML] Comment parser ce fichier XML avec java !


Sujet :

Format d'échange (XML, JSON...) Java

  1. #1
    Membre du Club Avatar de jlassira
    Inscrit en
    Mai 2005
    Messages
    228
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 228
    Points : 61
    Points
    61
    Par défaut [XML] Comment parser ce fichier XML avec java !
    Soit le fichier "modules.xml" suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
     
    <?xml version="1.0" encoding="iso-8859-1"?>
    <SUBSYSTEM name"SUB1" scopeKey="portal.subsystem.label.sub1" >
    <MODULE name="moduleA" displayLoad="true" roles="role1,role2,role3" scopeKey="portal.module.label.moduleA" />
    <MODULE name="moduleB" displayLoad="false" roles="role3,role4,role5" scopeKey="portal.module.label.moduleB"/>
    </SUBSYSTEM>
    <SUBSYSTEM name"SUB2" scopeKey="portal.subsystem.label.sub2">
    <MODULE name="moduleC" displayLoad="true" roles="role1,role2,role3" scopeKey="portal.module.label.moduleC" />
    <MODULE name="moduleD" displayLoad="false" roles="role3,role4,role5" scopeKey="portal.module.label.moduleD" />
    </SUBSYSTEM>

    mon but est de pouvoir parser ce fichier et d'en extraire la liste des modules , la liste de roles de pour chaque module en d'autre terme je dosi al'issue du parsing retourner un objet Hashmap contenanat pour chaque module la liste des roles qui lui est correspondante, ce qui revient a parser les attrubuts "name" et "roles" de chaque module.

    je suis novice dans el parsing avec xml et je compte vraiement sur votre aide .. (j'utilise eclipse 3.1 )

    merci de m'aider
    Ce que l'on fait dans sa vie...

  2. #2
    Membre éprouvé Avatar de noOneIsInnocent
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 037
    Points : 1 161
    Points
    1 161
    Par défaut
    ben déjà j'ai deux remarques
    1) ton fichier xml ne contient pas de racine ...ou du moins je ne la vois pas

    2) pour le parsing regarde la FAQ Java ...c'est ecrit dedans comment faire sinon regarde cherche sur google et plus precisement dans les tutoriaux sur le site de sun qui explique aussi comment faire

    je pense qu'il vaut mieux que tu cherches des tutoriaux ou au moins lire la faq java que d'avoir une solution toute faite qui ne t'aidera pas forcement

    voici un lien

    http://java.sun.com/webservices/jaxp/dist/1.1/docs/tutorial/index.html
    par exemple ...

  3. #3
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Le mieux est encore d'utiliser une API pour parser des fichiers xml, je te conseille JDom, que j'ai découverte il n'y a pas longtemps et qui est tres bien

  4. #4
    Membre du Club Avatar de jlassira
    Inscrit en
    Mai 2005
    Messages
    228
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 228
    Points : 61
    Points
    61
    Par défaut
    Oui tu as raison c'est un mauvais fichier voilà le bon

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
     
    <?xml version="1.0" encoding="iso-8859-1"?> 
    <MODULES>
    <SUBSYSTEM name"SUB1" scopeKey="portal.subsystem.label.sub1" > 
    <MODULE name="moduleA" displayLoad="true" roles="role1,role2,role3" scopeKey="portal.module.label.moduleA" /> 
    <MODULE name="moduleB" displayLoad="false" roles="role3,role4,role5" scopeKey="portal.module.label.moduleB"/> 
    </SUBSYSTEM> 
    <SUBSYSTEM name"SUB2" scopeKey="portal.subsystem.label.sub2"> 
    <MODULE name="moduleC" displayLoad="true" roles="role1,role2,role3" scopeKey="portal.module.label.moduleC" /> 
    <MODULE name="moduleD" displayLoad="false" roles="role3,role4,role5" scopeKey="portal.module.label.moduleD" /> 
    </SUBSYSTEM> 
    </MODULES>

    c'est un document valide là n'est ce pas?
    Ce que l'on fait dans sa vie...

  5. #5
    Membre du Club Avatar de jlassira
    Inscrit en
    Mai 2005
    Messages
    228
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 228
    Points : 61
    Points
    61
    Par défaut
    pourrais tu donc m'aider un peu pour beneficier de ton experience avec jdom?
    Ce que l'on fait dans sa vie...

  6. #6
    Membre éprouvé Avatar de noOneIsInnocent
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 037
    Points : 1 161
    Points
    1 161
    Par défaut
    il me semble que ton fichier est valide
    mais comme je t'ia dis t'as dejà un lien ...
    plus

    http://java.developpez.com/faq/java/?page=langage_xml

    tu y trouves les differentes methodes et comment faire
    essaies dejà avec ça et reviens nous voir si tu as des difficultés ..
    je pense que tu apprendras mieux comme ça ..

  7. #7
    Membre du Club Avatar de jlassira
    Inscrit en
    Mai 2005
    Messages
    228
    Détails du profil
    Informations forums :
    Inscription : Mai 2005
    Messages : 228
    Points : 61
    Points
    61
    Par défaut
    merci j'y veillerai
    pourrais tu cependant me dire les avatages qu'a le type hashtable et si je peux y stocker ce que j'ai demandé dans mon message,? c'est a dire pour chaque clé = module j'associé une liste de roles ?

    merci
    Ce que l'on fait dans sa vie...

  8. #8
    Expert éminent sénior
    Avatar de Baptiste Wicht
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    7 431
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2005
    Messages : 7 431
    Points : 21 324
    Points
    21 324
    Par défaut
    Citation Envoyé par jlassira
    pourrais tu donc m'aider un peu pour beneficier de ton experience avec jdom?
    Je me suis entiérement basé sur ce tuto tres bien fait :

    http://cynober.developpez.com/tutoriel/java/xml/jdom

Discussions similaires

  1. Comment parser un fichier XML avec un tag root avec prefix?
    Par davtypo3 dans le forum Général Python
    Réponses: 2
    Dernier message: 20/02/2014, 15h48
  2. comment parser ce fichier xml ?
    Par kaayna dans le forum Langage
    Réponses: 3
    Dernier message: 06/05/2012, 17h59
  3. Réponses: 4
    Dernier message: 20/04/2011, 10h39
  4. comment parser un fichier xml efficacement ?
    Par isoman dans le forum C#
    Réponses: 2
    Dernier message: 08/12/2008, 10h00
  5. [DOM4J] Comment parser un fichier xml avec dom4j
    Par taouja dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 12/04/2007, 07h47

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