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 vers String [JDOM]


Sujet :

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

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Par défaut XML vers String
    Hi,

    Je voudrais avoir un exemple de code permattant en java avec JDOM de convertir une selection XML avec JDOM en string ( a fin d'inserer cette chaine de caractère dans un fichier xml).

    Merci d'avance

  2. #2
    Membre confirmé
    Inscrit en
    Février 2005
    Messages
    88
    Détails du profil
    Informations forums :
    Inscription : Février 2005
    Messages : 88
    Par défaut
    je sais pas si ça fonctionnera sur JDOM, il faudra peut-etre modifier quelque chose mais le principe est là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    StringWriter stringOut = new StringWriter(); 
    TransformerFactory transFactory = TransformerFactory.newInstance(); 
    Transformer trans = transFactory.newTransformer(); 
    trans.transform(new DOMSource(docOut), new StreamResult(stringOut));
    String xml =  stringOut.toString();

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Par défaut
    Citation Envoyé par pistache42
    je sais pas si ça fonctionnera sur JDOM, il faudra peut-etre modifier quelque chose mais le principe est là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    StringWriter stringOut = new StringWriter(); 
    TransformerFactory transFactory = TransformerFactory.newInstance(); 
    Transformer trans = transFactory.newTransformer(); 
    trans.transform(new DOMSource(docOut), new StreamResult(stringOut));
    String xml =  stringOut.toString();

    bonjour,
    je vous remercie de votre message.
    Ce n'est pas tout le doc XML (DOMSource) que je voudrais modifier mais seulement un Element complexe selectionné par le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    racine = document.getRootElement();
          System.out.println(racine.getName());
          Element element1=racine.getChild("Body",nsSOAP);
          Element element2=element1.getChild("Create");
          List list=element2.getChildren("CreateItem");
          //    On crée un Iterator sur notre liste
          Iterator i = list.iterator();
          while (i.hasNext())
    {
     Element courantElement = (Element) i.next();
    //convertir le contenu du courantElement vers String pour l'inserer
    }
    Merci.

  4. #4
    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
    Comme ca ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Element elt = ...
    String s = new String();
    while (i.hasNext()) {
     Element e = (Element) i.next();
     s+="<"+e.getName+">"+e.getText()+"</"+e.getName()+"/>\n";
    }

  5. #5
    Membre du Club
    Inscrit en
    Janvier 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 6
    Par défaut
    Merci,
    Mais je pense que ton code insere seulement un element simple, et moi je cheche à inseré des élements complexes par exemple:
    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
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    <Create itemID="xxxx">
    			<ResourceID>gup:A120/IMPI</ResourceID>
    			<CreateItem>
    				<Select>
    					<GCL>//HSSIMSData</GCL>
    				</Select>
    				<NewData>
    					<HSSIMSDataKey/>
    					<SCSCFSelection>
    						<MandatoryCapability/>
    						<PreferedSCSCF/>
    					</SCSCFSelection>
    					<Registration>
    						<SCSCFName/>
    						<DiameterClientAddressOfCSCF/>
    					</Registration>
    					<PrivateUserIdentity>
    						<Identity>gup:xxx@xxx.fr/IMPI</Identity>
    						<SubscriptionIdentificationAndNumberingReference>gup:00330000/IMSU</SubscriptionIdentificationAndNumberingReference>
    						<AuthentificationAndCipheringReference>c2</AuthentificationAndCipheringReference>
    					</PrivateUserIdentity>
    				</NewData>
    			</CreateItem>
    			<CreateItem>
    				<Select>
    					<GCL>//AuthenticationAndCiphering</GCL>
    				</Select>
    				<NewData>
    					<AuthenticationAndCipheringKey>c2</AuthenticationAndCipheringKey>
    					<K/>
    					<Algorithm/>
    					<AMF/>
    					<PrivateUserIdentityReference>gup:xxx@xxx.fr/IMSI</PrivateUserIdentityReference>
    				</NewData>
    			</CreateItem>
    			<CreateItem>
    				<Select>
    					<GCL>//SubscriptionIdentificationAndNumbering</GCL>
    				</Select>
    				<NewData>
    					<PublicUserIdentity>gup:0033000000IMSU</PublicUserIdentity>
    					<BarringIndication>True</BarringIndication>
    					<ListOfauthorizedVisitedNetworkIdentifiers>
    						<Id>0033</Id>
    						<Id>00213</Id>
    						<Id>001</Id>
    					</ListOfauthorizedVisitedNetworkIdentifiers>
    					<ServiceRelatedToUnregistredState/>
    					<PrivateUserIdentityReference>gup:xxx@xxxxx.fr/IMSI</PrivateUserIdentityReference>
    					<ServiceProfileReference>Service_Profile_1</ServiceProfileReference>
    					<ImplicitlyRegisteredSetReference>gup:Test@xxxxx.fr/IRS</ImplicitlyRegisteredSetReference>
    				</NewData>
    			</CreateItem>
    		</Create>

  6. #6
    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
    Alors dans ce cas, il y a un truc, la récursivité, je te laisse le soin de chercher de ce coté là et de revenir en cas de problème

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    57
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 57
    Par défaut
    à ta place j'utiliserais Dom4j
    chaque Element possède une fonction asXML() qui te retourne la chaune XML correspondant à ton noeud.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import org.dom4j.Attribute;
    import org.dom4j.Document;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;
     
    SAXReader reader = new SAXReader();
                    Document d = reader.read(new StringReader(FileStringUtility.file2String(filePath)));
    tu trouveras la doc et les jar ici
    http://www.dom4j.org/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Mysql] Donnée XML >vers> BDD
    Par largiss dans le forum XQUERY/SGBD
    Réponses: 14
    Dernier message: 28/02/2017, 17h51
  2. [PowerShell] XML vers STRING
    Par blackigle dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 29/07/2011, 22h10
  3. [XSLT] XML vers XML
    Par ren0 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 13/10/2004, 12h54
  4. [XSL-FO] xml vers xsl-fo (pour generation PDF ou RTF)
    Par dams50 dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 13/12/2003, 21h07
  5. Requete XPath: neoud XML et string
    Par alexandre54 dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 27/06/2003, 13h02

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