XMLHelper

  • Rversion finale: Zurich
  • Mis à jour 31 juil. 2025
  • 1 minute de lecture
  • L’include de script d’aide XML facilite l’analyse du code XML dans les scripts.

    Utilisez les méthodes suivantes pour exporter XML vers JSON ou JSON vers XML.
    • La méthode toObject() renvoie les éléments XML en tant que propriétés JSON. Cette méthode fonctionne correctement, que le paramètre fourni soit un document XML ou une chaîne XML. Cette méthode a un paramètre facultatif de l’entrée XML pour la conversion comme alternative à la spécification de l’entrée XML dans le constructeur.
    • La méthode toXMLDoc() renvoie le JSON fourni en tant qu’éléments XML.
    Remarque :
    Vous devez échapper les esperluettes (&) dans votre XML ou la conversion échoue silencieusement.

    Exemple

    L’exemple suivant montre comment convertir un document XML en JSON et utilise une fonction récursive pour générer chaque membre. La fonction récursive permet d’indiquer comment la structure du document XML est rendue au format JSON.
    var xmlString = "<company>" + "<employee>" + "<id>10</id>"
     + "<firstname>Tom</firstname>" + "<lastname>Cruise</lastname>" + "<test>test1</test>"
     + "<test>test3</test>" + "</employee>" + "<employee>" + "<id>20</id>" + "<firstname>Paul</firstname>"
     + "<lastname>Enderson</lastname>" + "<test>test6</test>" + "<test>test5</test>" + "</employee>" + "<employee>"
     + "<id>30</id>" + "<firstname>Paul</firstname>" + "<lastname>Bush</lastname>" + "<test>test2</test>"
     + "<test>test4</test>" + "</employee>" + "</company>";
    var helper = new XMLHelper(xmlString);
    var obj = helper.toObject();
    logObj(obj, "*");
    
    function logObj(obj, sep) {
      for (x in obj) {
        if (typeof obj[x] != "function") {
          gs.log(sep + x + ":: " + obj[x]);
        }
        logObj(obj[x], sep + "*");
      }
    }
    Sortie :
    *** Script: *employee:: [object Object],[object Object],[object Object]
    *** Script: **2:: [object Object]
    *** Script: ***id:: 30
    *** Script: ***test:: test2,test4
    *** Script: ****0:: test2
    *** Script: ****1:: test4
    *** Script: ***firstname:: Paul
    *** Script: ***lastname:: Bush
    *** Script: **0:: [object Object]
    *** Script: ***id:: 10
    *** Script: ***test:: test1,test3
    *** Script: ****0:: test1
    *** Script: ****1:: test3
    *** Script: ***firstname:: Tom
    *** Script: ***lastname:: Cruise
    *** Script: **1:: [object Object]
    *** Script: ***id:: 20
    *** Script: ***test:: test6,test5
    *** Script: ****0:: test6
    *** Script: ****1:: test5
    *** Script: ***firstname:: Paul
    *** Script: ***lastname:: Enderson