certains cas de figures.
English Title: "How to convert XML to JSON and JSON to XML in CLI"
les sources de xml2json https://www.npmjs.com/package/xml2json
Installation
$ npm install xml2json
npm http GET https://registry.npmjs.org/xml2json
npm http 200 https://registry.npmjs.org/xml2json
npm http GET https://registry.npmjs.org/xml2json/-/xml2json-0.9.0.tgz
npm http 200 https://registry.npmjs.org/xml2json/-/xml2json-0.9.0.tgz
[...]
Un répertoire nommé "node_modules" se créé là où vous avez exécuter la commande
Tout d'abord localisons xml2json: Il se trouve dans node_modules/bin et taper la commande sous la forme suivante:
$ cat monfichier.xml | /home/stan/node_modules/xml2json/bin/xml2json > monfichier.json
Le fichier JSON est alors généré
On peut alors utiliser jq (https://stedolan.github.io/jq/tutorial/) pour bien formater le JSON.
Utiliser xml2json pour transformer du json en xml
Là ça se complique ! il y a bien un json2xml, mais pas de binaire pour l’exécuter, juste des libs
Je les ai quand même installées:
Installation
# npm install xml2jsonEnsuite aller dans ~/node_modules/xml2json/bin/ (oui je dis bien dans xml2json et pas json2xml)
et créer le fichier json2xml
$ vim json2xmlContenu du fichier:
#!/usr/bin/env nodeEnregistrer et quitter, puis rendez le exécutable:
var json2xml = require('../');
var pkg = require('../package.json');
var json = '';
var args = process.argv.slice(2)
var arg = args[0]
if (arg == '--version') {
console.log(pkg.version)
process.exit(0)
}
process.stdin.on('data', function (data) {
json += data;
});
process.stdin.resume();
process.stdin.on('end', function () {
xml = json2xml.toXml(json)
process.stdout.write(xml + '\n')
});
$ chmod +x json2xml
puis l'executer:
$ cat $JSONFILE | /opt/tools/node_modules/xml2json/bin/json2xml > $XMLFILE
Et voilà
Aucun commentaire:
Enregistrer un commentaire