import java.io.StringWriter;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.transform.Transformer;
import javax.xml.transform.TransformerFactory;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class Xml {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Xml xmlObj = new Xml();
xmlObj.makeStudentXml();
}
private void makeStudentXml()
{
try{
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
// root elements
Document doc = docBuilder.newDocument();
Element rootElement = doc.createElement("UniversityRecord");
doc.appendChild(rootElement);
// Adding 2 sample students in Student Element.
for(int index=0; index<2; index++)
{
Element studentElement = doc.createElement("Student");
rootElement.appendChild(studentElement);
Element studentName = doc.createElement("Name");
studentName.appendChild(doc.createTextNode("Hammad Hassan"));
Element studentRollNo = doc.createElement("RollNo");
studentRollNo.appendChild(doc.createTextNode("26"));
Element studentClass = doc.createElement("Class");
studentClass.appendChild(doc.createTextNode("Four"));
// Adding all elements to Student.
studentElement.appendChild(studentName);
studentElement.appendChild(studentRollNo);
studentElement.appendChild(studentClass);
}
// Now displaying the results of XML.
TransformerFactory transformerFactory = TransformerFactory.newInstance();
Transformer transformer = transformerFactory.newTransformer();
DOMSource source = new DOMSource(doc);
StringWriter writer = new StringWriter();
transformer.transform(source, new StreamResult(writer) );
String xmlResults = writer.getBuffer().toString().replaceAll("\n|\r", "");
System.out.println(xmlResults);
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<UniversityRecord>
<Student>
<Name>Hammad Hassan</Name>
<RollNo>26</RollNo>
<Class>Four</Class>
</Student>
<Student>
<Name>Hammad Hassan</Name>
<RollNo>26</RollNo>
<Class>Four</Class>
</Student>
</UniversityRecord>This code will explain how easily you can make xml in java by using javax.xml instead of using Strings.
