TWXml2Csv TWXml2Csv

Mit diesem XML Transformator können alle XML Dateien mit Hilfe einer XSLT oder XSL Datei die frei angepasst werden kann, in ein gewünschtes Ausgabe-Format wie Komma separiert (csv), Text (txt), HTML ... oder wie auch immer umgewandelt werden. Oder diese Tool kann auch zum Testen von selbsterstellten XSL Dateien verwendet werden.

Installation
Java Version 1.6 muss mind. installiert sein.

1. Download der twxml2csv-1.2.0-standard.jar (siehe weiter unten) mit rechts Klick und Speichern unter.
Das Jar ist ein selbstausführendes Jar, also die Datei einfach mit einen Doppelklick starten und wie im Setup-Dialog angegeben den Setup-Prozess durchführen. Sollte nach einem Doppelklick kein Setup-Prozess starten, dann in das Verzeichnis mit der Konsole gehen und

java -jar twxml2csv-1.2.0-standard.jar

ausführen. Der Setup-Prozess startet dann automatisch mit:

Photo von Setup Dialog

2. Nach der Installation im Installationsverzeichnis die start-twxml2csv.bat ausführen, oder über den Menüeintrag unter Programme TWXml2Csv starten. Es startet die TWXml2Csv Anwendung wie folgt:


TWXmlToCsv Programm Foto

3. Die Quell XML Datei die umgewandelt werden soll auswählen.
4. Die XSLT Datei mit dem zu formenden Inhalt auswählen.
5. Die Ausgabe Datei auswählen oder eingeben.
6. Auf Transform klicken. Die Ausgabe Datei wird erzeugt und auch angezeigt in einem Fenster:

TWXmlToCsv Ergebniss Foto


Da das TWXml2Csv Programm ein JAVA Programm ist läuft es Plattformunabhängig auf allen Betriebssystemen wo Java >= 1.6 installiert ist wie alle Windows Versionen wie z.b. Vista, XP, NT, 2000, ME, 98, 95 ... aber auch Mac, Linux, Unix ... Betriebssystemen.


Das Programm kann auch von Scripten ohne GUI über die Komandozeile aufgerufen werden. Die Parameter:

java -classpath .;twxml2csv1.1.jar de.wenzlaff.xmltransform.parser.Xml2Csv XMLDateiname XSLDateiname CSVErgebnisdateiname
z.B.:
java -classpath .;twxml2csv1.1.jar de.wenzlaff.xmltransform.parser.Xml2Csv eingabe.xml csv.xsl out.csv

Eine XST Datei kann für die Umwandlung nach CVS so aussehen. Sie kann aber auch wie gewünscht angepasst werden:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="iso-8859-1"/>

<xsl:strip-space elements="*" />

<xsl:template match="/*/child::*">
<xsl:for-each select="child::*">
<xsl:if test="position() != last()"><xsl:value-of select="normalize-space(.)"/>;</xsl:if>
<xsl:if test="position() = last()"><xsl:value-of select="normalize-space(.)"/>;</xsl:if>
</xsl:for-each>
</xsl:template>

</xsl:stylesheet>
Die Quell XML die Umgewandelt wird kann z.B. so aussehen:
<?xml version="1.0"?>

<daten>

<!-- test.xml Testdatei zum umformen nach csv mit xmltocsv -->

<name id="idausnamen" aber="keine Attribute">
    <name>1. Thomas</name>
    <wert-zwei>1b.</wert-zwei>
</name>

<ergebnis id="1">
    <wert>2.</wert>
    <nachname>Wenzlaff</nachname>
    <testtag>der 3. Tag</testtag>
</ergebnis>

<ergebnis id="2">
    <wert>3.</wert>
    <wert-drei>3b.</wert-drei>
</ergebnis>

<ergebnis id="3" aber="keine Attribute 22">
    <wert>4.</wert>
    <wert-drei>5.</wert-drei>
</ergebnis>

<ergebnis id="4">
    <wert>6.</wert>
</ergebnis>

</daten>

Das Ergebniss würde dann wie folgt sein:

1. Thomas;1b.;2.;Wenzlaff;der 3. Tag;3.;3b.;4.;5.;6.;

Oder soll noch jeder Wert in Anführungszeichen und jeder Eintrag in eine neue Zeile, dann dies XSL verwenden:

<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text" encoding="iso-8859-1"/>

<xsl:strip-space elements="*" />

<xsl:template match="/*/child::*">
<xsl:for-each select="child::*">
<xsl:if test="position() != last()">"<xsl:value-of select="normalize-space(.)"/>",</xsl:if>
<xsl:if test="position()  = last()">"<xsl:value-of select="normalize-space(.)"/>"<xsl:text>&#xD;</xsl:text>
</xsl:if>
</xsl:for-each>
</xsl:template>

</xsl:stylesheet>

Das Ergebniss würde dann wie folgt sein:
"1. Thomas","1b."
"2.","Wenzlaff","der 3. Tag"
"3.","3b."
"4.","5."
"6."


Download Download: TWXml2Csv    PAD Factsheet von TWXml2Csv



[Spende] - [Top] - [Home] - [Tools] - [Text] - [Suche] - [Kontakt]  RSS wenzlaff.de XML Feed [Valid Wenzlaff RSS XML feed] Valid HTML 4.0!
Copyright © 2017 by Thomas Wenzlaff. Alle Rechte vorbehalten. http://www.wenzlaff.de