All tools (39)
XML to CSV
Flatten repeated XML elements into spreadsheet rows.
Attributes become keys prefixed with @.
address.city becomes its own column.
Paste XML. Attributes and repeated elements are preserved.
XML to CSV
Paste XML and get rows. The hard part of this conversion is deciding what a row is, because XML wraps its list in a container -<catalog> around repeated<book> elements. This finds that repeating element and uses it, and the status line names the path it chose so the guess is never silent.
Attributes become columns
With keep attributes on,<book id="1"> produces a column called@id alongside the columns from the child elements. The prefix is there so an attribute and a child element of the same name cannot collide. Turn it off and only the element content is kept.
Nested children flatten into dotted columns
An <author><name> two levels down becomes a column named author.name. Repeated leaf elements are joined into one cell rather than spread across numbered columns, because a spreadsheet cell cannot hold a list and one column per index is usually noise.
Malformed XML is reported, not guessed at
Parsing uses the browser's own XML parser, so an unclosed tag or a stray ampersand produces the engine's error message rather than a half-converted file.
Related tools
- CSV to XML - the other direction.
- XML to JSON - the full structure, nothing flattened.
- JSON to CSV - if your data is already JSON.