engali94/XMLJson

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Swift command-line tool to easily convert XML format to JSON.

SPM Twitter: @alihilal94

demo

  • Good Mood
$ xmljson -h
OVERVIEW: Convert XML Format to JSON Format.
USAGE: xmljson --dir <dir> [--files <files> ...] [--output <output>] [--verbose] [--all]

OPTIONS:
  -d, --dir <dir>         Absolute path to a directory containing the xml files.
  -f, --files <files>     XML files to be parsed.
  -o, --output <output>   [Optinal] JSON file(s) output directory.
  -v, --verbose           Show extra logging for debugging purposes.
  -a, --all               Convert all XML files present in the specifed directory.
  -h, --help              Show help information.

First specify where the xml files are located through --dir argument (Manadatory) Then you can specify the files to be converted in through --files argument you can pass as much as you want

$ xmljson -d ~/xml/files/dir - file1.xml filen.xml --verbose

If you want to convert all the XML files present in the directory, pass the --dir argument and --all flag only.

$ xmljson -d ~/xml/files/dir  --all 

if you would like to change the output directory pass it to --output .

$ xmljson -d ~/xml/files/dir  -o ~/path/to/output/dir --all 

XML Input

?xml version="1.0" encoding="UTF-8"?>
<bookstore>
  <book category="cooking">
    <title lang="en">Everyday 1</title>
    <author>Giada De Laurentiis</author>
    <year>2005</year>
    <price>30.00</price>
  </book>
  <book category="web">
    <title lang="en">Learning XML</title>
    <author>Erik T. Ray</author>
    <year>2003</year>
    <price>39.95</price>
  </book>
</bookstore>

JSON Output

[
  {
    "author" : "Giada De Laurentiis",
    "title" : {
      "lang" : "en",
      "text" : "Everyday 1"
    },
    "year" : "2005",
    "category" : "cooking",
    "price" : "30.00"
  },
  {
    "author" : "Erik T. Ray",
    "title" : {
      "lang" : "en",
      "text" : "Learning XML"
    },
    "year" : "2003",
    "category" : "web",
    "price" : "39.95"
  }
]

You can install xmljson using homebrew as follows:

$ brew tap engali94/formulae
$ brew install xmljson

You can install xmljson using make as follows:

$ git clone https://.com/engali94/XMLJson.git
$ cd XMLJson
$ make install
  • cd into the repository

  • run swift package generate-xcodeproj

  • Run the following command to try it out:

     swift run XMLJson --help

XMLJson is released under the MIT license. See LICENSE for more information.

About

Swift CLI tool for converting any XML to JSON format

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •