Skip to content

xml2csv converts XML to CSV. You can easily define mappings for converts using XPath.

License

Notifications You must be signed in to change notification settings

onozaty/xml2csv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

xml2csv

GitHub license Test codecov

xml2csv converts XML to CSV.
You can easily define mappings for converts using XPath.

Usage

$ xml2csv -i input.xml -m mapping.json -o output.csv

The arguments are as follows.

Usage: xml2csv [flags]

Flags
  -i, --input string     XML input file path or directory or url
  -m, --mapping string   XML to CSV mapping file path or url
  -o, --output string    CSV output file path
  -b, --bom              CSV with BOM
  -h, --help             Help

XML and mapping files can be specified by URL.

xml2csv -i https://github.com/onozaty/xml2csv/raw/master/testdata/rss.xml -m https://github.com/onozaty/xml2csv/raw/master/mapping/rss.json -o output.csv

Mapping

The conversion mapping definition is written in JSON.
Specify the position on the XML with XPath.

{
    "rowsPath": "//item",
    "columns": [
        {
            "header": "title",
            "valuePath": "/title"
        },
        {
            "header": "link",
            "valuePath": "/link"
        },
        {
            "header": "description",
            "valuePath": "/description"
        }
    ]
}
  • rowsPath : XPath to get as a rows.
  • columns : Definition of each column.
    • header : CSV header.
    • valuePath : XPath to get as a value.
    • useEvaluate : Specify true when using an expression with valuePath. For example, when using sum() or not(), boolean().

antchfx/xpath is used in xml2csv.
See below for supported XPath.

Please refer to the sample below.

Install

You can download the binary from the following.

License

MIT

Author

onozaty

About

xml2csv converts XML to CSV. You can easily define mappings for converts using XPath.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Languages