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 :

Parser un fichier XML


Sujet :

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

  1. #1
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut Parser un fichier XML
    Bonsoir,
    je suis en train de parser un fichier xml et mettre le contenu dans un fichier texte.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     nodes = doc.getElementsByTagName("title");
                Node node = doc.getDocumentElement();
    ......
    for (int i = 0; i < nodes.getLength(); i++) {
                    element = (Element) nodes.item(i);
     
                    System.out.println("Description: " + readNode(element, "description"));
                    FileWriter myFile = new FileWriter("fichier"+i,true); 
                    myFile.write(readNode(element, "description").toString());
                    myFile.close();
    mon probl�me se pr�sente comme ceci: le fichier est cr�� mais reste vide.
    Pouvez-vous m'aider?
    Merci

  2. #2
    Mod�rateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par d�faut
    Oui... Et elle fait quoi la m�thode readNode() ?

    Par ailleurs, il vaudrait mieux poser cette question dans le forum Java, section XML.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut
    merci
    je vais voir votre lien

  4. #4
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut
    voici la methode readNode():
    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
     
        /**
         * Méthode permettant de retourner ce que contient un noeud
         * @param _node le noeud principal
         * @param _path suite des noms des noeuds sans espace séparés par des "|"
         * @return un string contenant le valeur du noeud voulut
         */
     
        public String readNode(Node _node, String _path) {
     
            String[] paths = _path.split("\\|");
            Node node = null;
     
            if (paths != null && paths.length > 0) {
                node = _node;
     
                for (int i = 0; i < paths.length; i++) {
                    node = getChildByName(node, paths[i].trim());
                }
            }
     
            if (node != null) {
                return node.getTextContent();
            } else {
                return "";
            }
        }

  5. #5
    Mod�rateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par d�faut
    ... et getChildByName() ?...

    Enfin bon, � moins que cette m�thode fasse vraiment des choses horribles, le fichier que tu cr�es devrait contenir exactement ce qui s'affiche avec "Description: " dans System.out.

    Je vois pas que dire de plus.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  6. #6
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut
    voici la methode getChildByName():
    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
    /**
         * renvoye le nom d'un noeud fils a partir de son nom
         * @param _node noeud pricipal
         * @param _name nom du noeud fils
         * @return le noeud fils
         */
        public Node getChildByName(Node _node, String _name) {
            if (_node == null) {
                return null;
            }
            NodeList listChild = _node.getChildNodes();
     
            if (listChild != null) {
                for (int i = 0; i < listChild.getLength(); i++) {
                    Node child = listChild.item(i);
                    if (child != null) {
                        if ((child.getNodeName() != null && (_name.equals(child.getNodeName()))) || (child.getLocalName() != null && (_name.equals(child.getLocalName())))) {
                            return child;
                        }
                    }
                }
            }
            return null;
        }
    le champ "Description " s'affiche pour System.out. mais il ne s'affiche pas au sein du fichier cr�e

  7. #7
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut
    merci j'ai r�gl� le probl�me

  8. #8
    Mod�rateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par d�faut
    Citation Envoy� par nounouuuuu201186 Voir le message
    merci j'ai r�gl� le probl�me
    �a aurait pu �tre sympa de dire quel �tait le probl�me et comment il a �t� r�solu. Je me suis investi, apr�s tout.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Membre confirm� Avatar de nounouuuuu201186
    Femme Profil pro
    Stagiaire
    Inscrit en
    Juillet 2011
    Messages
    169
    D�tails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activit� : Stagiaire
    Secteur : High Tech - Multim�dia et Internet

    Informations forums :
    Inscription : Juillet 2011
    Messages : 169
    Par d�faut
    Bonsoir,
    Le probl�me est que le champ "Description" dans la plupart des cas contient une cha�ne vide. Donc le param�tre "_node" reste �gal � "null". Le fichier xml que je suis en train de parser est un fichier RSS. Les utilisateurs sont ceux qui ajoutent le champ "Description" pour commenter une ressource. C'est pour cela que ce champ peut ne pas contenir aucune information sur la ressource.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. probl�me pour parser un fichier xml avec XML::Simple
    Par black_code dans le forum Modules
    R�ponses: 3
    Dernier message: 30/01/2006, 19h32
  2. [xslt] Parser 2 fichiers XML
    Par malekms dans le forum XSL/XSLT/XPATH
    R�ponses: 4
    Dernier message: 30/12/2005, 12h22
  3. Parser un fichier XML
    Par Charlinecha dans le forum Format d'�change (XML, JSON...)
    R�ponses: 1
    Dernier message: 11/07/2005, 17h18
  4. [SAX] parser un fichier xml en Java
    Par royou dans le forum Format d'�change (XML, JSON...)
    R�ponses: 1
    Dernier message: 10/02/2005, 17h12
  5. parser des fichier .xml en perl
    Par djibril dans le forum Modules
    R�ponses: 13
    Dernier message: 18/05/2004, 17h08

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