This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
class CreateDomXml { public static void main(String[] args) { try{ //Create instance of DocumentBuilderFactory DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); //Get the DocumentBuilder DocumentBuilder docBuilder = factory.newDocumentBuilder(); //Create blank DOM Document Document doc = docBuilder.newDocument();
//create the root element Element st = doc.createElement("Students"); //add it to the xml tree doc.appendChild(st); //create a comment Comment comment = doc.createComment("This is comment"); //add in the root element st.appendChild(comment);
//create child element Element childElement = doc.createElement("student"); //Add the atribute to the child childElement.setAttribute("id","1001"); st.appendChild(childElement);
public class DOMParserCheck { static public void main(String[] arg){ try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter File name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if(file.exists()){ try { // Create a new factory to create parsers DocumentBuilderFactory dBF = DocumentBuilderFactory.newInstance(); // Use the factory to create a parser (builder) and use // it to parse the document. DocumentBuilder builder = dBF.newDocumentBuilder(); // builder.setErrorHandler(new MyErrorHandler()); InputSource is = new InputSource(xmlFile); Document doc = builder.parse(is); System.out.println(xmlFile + " is well-formed!"); } catch (Exception e) { System.out.println(xmlFile + " isn't well-formed!"); System.exit(1);
public class SearchElement{ public static void main(String[] args) { try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter file name: "); String str = bf.readLine(); File file = new File(str); if (file.exists()){ DOMParser parser = new DOMParser(); parser.parse(str); Document doc = parser.getDocument(); System.out.print("Enter element that have to count: "); String ele = bf.readLine(); NodeList list = doc.getElementsByTagName(ele); if(list.getLength() == 0){ System.out.println("Element doesn't exist in the " + str + " Document."); } else{ System.out.println("Element occurrs " + list.getLength() + " times in the " + str); } } else{ System.out.println("File not found!"); } } catch (Exception e){ e.getMessage(); } }}
Create - XML File (Document)
import java.io.*;import javax.xml.parsers.*;import javax.xml.transform.*;import javax.xml.transform.dom.*;import javax.xml.transform.stream.*;import org.w3c.dom.*; public class CreatXMLFile { public static void main(String[] args) throws Exception { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter number to add elements in your XML file: "); String str = bf.readLine(); int no = Integer.parseInt(str); System.out.print("Enter root: "); String root = bf.readLine(); DocumentBuilderFactory documentBuilderFactory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = documentBuilderFactory.newDocumentBuilder(); Document document = documentBuilder.newDocument(); Element rootElement = document.createElement(root); document.appendChild(rootElement); for (int i = 1; i <= no; i++){ System.out.print("Enter the element: "); String element = bf.readLine(); System.out.print("Enter the data: "); String data = bf.readLine(); Element em = document.createElement(element); em.appendChild(document.createTextNode(data)); rootElement.appendChild(em); } TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(document); StreamResult result = new StreamResult(System.out); transformer.transform(source, result); }}
public class DOMElements{ static public void main(String[] arg){ try { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter XML File name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if(file.exists()){ // Create a factory DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); // Use the factory to create a builder DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(xmlFile); // Get a list of all elements in the document NodeList list = doc.getElementsByTagName("*"); System.out.println("XML Elements: "); for (int i=0; i<list.getLength(); i++) { // Get element Element element = (Element)list.item(i); System.out.println(element.getNodeName()); } } else{ System.out.print("File not found!"); } } catch (Exception e) { System.exit(1); } }}
public class DisplayElementNodes { static public void main(String[] arg){ try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter a XML file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if (file.exists()){ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(xmlFile); TransformerFactory tranFactory = TransformerFactory.newInstance();
Transformer aTransformer = tranFactory.newTransformer(); // Get nodes list of all elements NodeList list = doc.getElementsByTagName("*"); for (int i=0; i<list.getLength(); i++){ // Get element Element element = (Element)list.item(i); Source src = new DOMSource(element); System.out.println("Node no: " + i + " is " + element.getNodeName()); System.out.println( "Its corresponding xml representation:"); Result dest = new StreamResult(System.out); aTransformer.transform(src, dest); System.out.println("\n"); } } else{ System.out.println(xmlFile + " (file name) doesn't found!"); } } catch (Exception e){ e.getMessage(); } }}
public class RemoveElement { static public void main(String[] arg) { try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter a XML file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile);
System.out.print("Enter an element which have to delete: "); String remElement = bf.readLine(); if (file.exists()){ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(xmlFile); TransformerFactory tFactory = TransformerFactory.newInstance(); Transformer tFormer = tFactory.newTransformer(); Element element = (Element)doc.getElementsByTagName(remElement).item(0);// Remove the node element.getParentNode().removeChild(element);// Normalize the DOM tree to combine all adjacent nodes doc.normalize(); Source source = new DOMSource(doc); Result dest = new StreamResult(System.out); tFormer.transform(source, dest); System.out.println(); } else{ System.out.println("File not found!"); } } catch (Exception e){ System.err.println(e); System.exit(0); } }}
public class GetData{ static public void main(String[] arg) { try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter XML file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile);
if (file.exists()){ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(xmlFile);// Create transformer Transformer tFormer = TransformerFactory.newInstance().newTransformer();// Output text type tFormer.setOutputProperty(OutputKeys.METHOD, "text");// Write the document to a file Source source = new DOMSource(doc); Result result = new StreamResult(System.out); tFormer.transform(source, result); } else{ System.out.println("File not found!"); } } catch (Exception e){ System.err.println(e); System.exit(0); } }}
Storing Data (Retrieved from a XML Document) to a File
public class StoreData{ static public void main(String[] arg) { try{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter XML file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if (file.exists()){ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); Document doc = builder.parse(xmlFile);// Create transformer Transformer tFormer = TransformerFactory.newInstance().newTransformer();
// Output Types (text/xml/html) tFormer.setOutputProperty(OutputKeys.METHOD, "text");// Write the document to a file Source source = new DOMSource(doc);// Create File to view your xml data as vk.txt/vk.doc/vk.xls/vk.shtml/vk.html) Result result = new StreamResult(new File("vk.txt")); tFormer.transform(source, result); System.out.println("File creation successfully!"); } else{ System.out.println("File not found!"); } } catch (Exception e){ System.err.println(e); System.exit(0); } }}
public class EmployeeDetails{ public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter XML file name:"); String xmlFile = bf.readLine(); new EmployeeDetails(xmlFile); } public EmployeeDetails(String str){ try{ File file = new File(str); if (file.exists()){ SAXParserFactory parserFact = SAXParserFactory.newInstance(); SAXParser parser = parserFact.newSAXParser(); System.out.println("XML Data: "); DefaultHandler dHandler = new DefaultHandler(){ boolean id; boolean name; boolean mail; public void startElement(String uri, String localName, String element_name, Attributes attributes)throws SAXException{ if (element_name.equals("Emp_Id")){ id = true; } if (element_name.equals("Emp_Name")){ name = true; } if (element_name.equals("Emp_E-mail")){ mail = true; } } public void characters(char[] ch, int start, int len) throws SAXException{ String str = new String (ch, start, len); if (id){ System.out.println("Emp_Id: "+str); id = false; } if (name){ System.out.println("Name: "+str); name = false; } if (mail){ System.out.println("E-mail: "+str); mail = false; }
public static void main(String[] args) throws IOException{ BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter XML file name:"); String xmlFile = bf.readLine(); new LocateError(xmlFile); } public LocateError(String str){ try{ File file = new File(str); if (file.exists()){ XMLReader reader = XMLReaderFactory.createXMLReader(); reader.parse(str); System.out.println(str + " is well-formed!"); } else{ System.out.println("File not found: " + str); } } catch (SAXParseException sax){ System.out.println(str + " isn't well-formed"); int line = sax.getLineNumber(); int col = sax.getColumnNumber(); System.out.println("Error is at line number "+ line + "and Column position "+ col); }
public class ReadAttributes { public static void main(String[] args) { try { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter a xml file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if (file.exists()){ //SAX-implementation: SAXParserFactory factory = SAXParserFactory.newInstance(); // Create SAX-parser SAXParser parser = factory.newSAXParser(); System.out.println("Name:\t" + "Value:"); //Define a handler SaxHandler handler = new SaxHandler(); // Parse the xml document parser.parse(xmlFile, handler); } else{ System.out.println("File not found!"); } } catch (Exception e) { e.printStackTrace(); } } private static class SaxHandler extends DefaultHandler { public void startElement(String uri, String localName, String qName, Attributes attrs) throws SAXParseException,SAXException { int length = attrs.getLength();
//Each attribute for (int i=0; i<length; i++) { // Get names and values to each attribute String name = attrs.getQName(i); System.out.print(name); String value = attrs.getValue(i); System.out.println("\t"+value); } } }}
public class WorkingSAXParserLocator extends DefaultHandler { private Locator locator; public static void main(String[] args) { try { BufferedReader bf = new BufferedReader(new InputStreamReader(System.in)); System.out.print("Enter xml file name: "); String xmlFile = bf.readLine(); File file = new File(xmlFile); if (file.exists()){ XMLReader parser = XMLReaderFactory.createXMLReader(); DefaultHandler handler = new WorkingSAXParserLocator(); parser.setContentHandler(handler); //parse xml file parser.parse(xmlFile); } else{ System.out.println("File not found!"); } } catch (Exception e) { System.err.println(e); } } public void setDocumentLocator(Locator locator) { this.locator = locator; }
//All methods positions private void printLocation(String location) { int line = locator.getLineNumber(); int column = locator.getColumnNumber(); System.out.println(location + " Line no: " + line + "\tColumn no: " + column); } //Document start public void startDocument() { printLocation("startDocument() method called at"); } //Document end public void endDocument() { printLocation("endDocument() method called at"); } //Element start public void startElement(String namespaceURI, String localName, String qualifiedName, Attributes atts) { printLocation("startElement() method called at "); } //Element end public void endElement(String namespaceURI, String localName, String qualifiedName) { printLocation("endElement() method called at \t"); } //characters public void characters(char[] text, int start, int length) { printLocation("characters() method called at \t"); }}