studentData.xml
<?xml version="1.0"?> <students> <student> <firstname>Rama</firstname> <middlename>Krishna</middlename> <lastname>Ponnam</lastname> <age>33</age> </student> <student> <firstname>Sowmya</firstname> <middlename>Krishna</middlename> <lastname>Ponnam</lastname> <age>25</age> </student> </students>
studentData.xsl
<?xml version="1.0"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" > <xsl:output method="text" omit-xml-declaration="yes" indent="no"/> <xsl:template match="/">firstname,middlename,lastname,age <xsl:for-each select="/students/student"> <xsl:value-of select="concat(firstname,',',middlename,',',lastname,',',age,'
')"/> </xsl:for-each> </xsl:template> </xsl:stylesheet>
App.java
package com.sample.app; import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import javax.xml.transform.Result; import javax.xml.transform.Source; import javax.xml.transform.Transformer; import javax.xml.transform.TransformerFactory; import javax.xml.transform.dom.DOMSource; import javax.xml.transform.stream.StreamResult; import javax.xml.transform.stream.StreamSource; import org.w3c.dom.Document; public class App { public static void main(String args[]) throws Exception { File stylesheet = new File("/Users/krishna/Documents/studentData.xsl"); File xmlSource = new File("/Users/krishna/Documents/studentData.xml"); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document document = builder.parse(xmlSource); StreamSource stylesource = new StreamSource(stylesheet); Transformer transformer = TransformerFactory.newInstance().newTransformer(stylesource); Source source = new DOMSource(document); Result outputTarget = new StreamResult(new File("/Users/krishna/Documents/result.csv")); transformer.transform(source, outputTarget); } }
Run
App.java.
Open
'result.csv', you can see the following content.
firstname,middlename,lastname,age Rama,Krishna,Ponnam,33 Sowmya,Krishna,Ponnam,25
You may
like
No comments:
Post a Comment