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 :

Ecrire du XML


Sujet :

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

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 17
    Par défaut Ecrire du XML
    Bonjour,

    Je créé dans mon application plusieurs flux de fichier xml.
    Pour l'instant, je le gère trés mal car dans un soucis de rapidité j'ai fait :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    StringBuffer resultat = new StringBuffer();
     
    // Noeud1
    resultat.append("<noeud1>");
    resultat.append(valNoeud1);
    resultat.append("</noeud1>");
     
    // Noeud2
    resultat.append("<noeud2>");
    resultat.append(valNoeud2);
    resultat.append("</noeud2>");
    ect...

    j'écris ensuite dans un fichier : Ceci ne me convient pas car je ne gère pas du tout les caractères &,",ect
    & --> &amp;

    Quel est la solution la plus simple (idéalement la plus efficace) pour créer des fichiers avec un contenu xml?

    Merci d'avance.

  2. #2
    Membre Expert
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Par défaut
    Salut,
    Tu peux regarder du coté d'api java spécialisée dans la manipulation de l'XML. Je pense en particulier à JDOM et SAX.
    Regarde dans la FAQ, tu trouveras plein d'informations sur le sujet.


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 17
    Par défaut
    En fait j'ai plusieurs parseur SAX (un par type de fichier xml) pour lire et traiter le contenu d'un fichier.

    Mon soucis est d'écrire un fichier. Autant je vois tres bien l'interet de SAX pour lire du xml , autant pour écrire je ne vois pas trop...
    Sax permet ce genre de chose? C'est ce qu'il y a de plus pratique?

    Je vais voir la faq.
    Merci

  4. #4
    Membre émérite
    Profil pro
    Architecte technique
    Inscrit en
    Mars 2002
    Messages
    966
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France

    Informations professionnelles :
    Activité : Architecte technique

    Informations forums :
    Inscription : Mars 2002
    Messages : 966
    Par défaut
    Tu veux écrire le fichier aprés transformation ?

  5. #5
    Membre émérite Avatar de sozie9372
    Inscrit en
    Mai 2005
    Messages
    713
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mai 2005
    Messages : 713
    Par défaut
    Pour générer du XML DOM ou JDOM sont très bien...
    Pour générer du XML à partir d'un XML tu peux utiliser XSLT...
    +++

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 17
    Par défaut
    En fait actuellement, j'ai en entrée :

    fichier plat (txt ou xml)

    Etape1 : Parseurs en SAX ou DOM pour intégrer les données. (voir même dans certain cas, analyse caractère par caractère du fichier. 4 premiers caractère = champ1, de 5 à 7 = champ2 ,ect)

    Etape2 : Je souhaite écrire sur disque un fichier xml dans un autre format que le fichier en entrée, qui serait standard quelquesoit le fichier reçu en entrée.


    Pour l'instant, l'étape2 se résume à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    StringBuffer resultat = new StringBuffer();
     
    // Noeud1
    resultat.append("<noeud1>");
    resultat.append(valNoeud1);
    resultat.append("</noeud1>");
     
    // Noeud2
    resultat.append("<noeud2>");
    resultat.append(valNoeud2);
    resultat.append("</noeud2>");
     
    ect...
    j'écris ensuite dans un fichier : resultat.toString()


    Je me demande donc qu'elle est la meilleur façon de procéder dans mon cas...
    Refaire un DOM? ou SAX + xslt?

    EN DOM, j'ai trouvé ce code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    XmlDocument doc = new XmlDocument();
    puis création de l'arbre avec doc.appendChild()
    Puis écriture :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    try {
          Writer out = new OutputStreamWriter(System.out);
          doc.write(out , "ISO-8859-1");
               écriture du document xml sur un flot en 
               encodage fr-latin
        } catch (IOException e) {
          System.out.println(e.getMessage());
        }
    Dans ce cas, les &," ect seront-ils transformé en &amps; , &quote; ?

Discussions similaires

  1. [XSD] Ecrire du XML à partir d'un hashmap
    Par moreljul dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 11/01/2008, 16h52
  2. Ecrire un Xml à partir d'un dataset
    Par Julien1987 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 06/02/2007, 16h14
  3. [C#] Comment ecrire un xml a partir d'un datagrid?
    Par Julien1987 dans le forum C#
    Réponses: 4
    Dernier message: 12/12/2006, 12h07
  4. Solution pour ecrire dans XML
    Par totoche dans le forum Flash
    Réponses: 1
    Dernier message: 26/10/2006, 17h36
  5. Réponses: 4
    Dernier message: 23/10/2003, 08h03

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