Reading XML from a File

This Example shows you how to Load Properties from the XML file via a DOM document.

Ads

Tutorials   
JAXB Create XML File And Get Data From XML XML,XML Tutorials,Online XML Tutorial,XML Help Tutorials The Simple API for XML (SAX) APIs Part I XML,XML Tutorials,Online XML Tutorial,XML Help Tutorials XML Tutorial Ignoring Comments While Parsing an XML File Accessing XML file from Java Preventing Expansion of Entity References Getting next Tag in the XML File Replacing a Node with a New One Reading XML Data from a Stream Reading an XML document using JDOM Query XML with an XPath expression Normalize All of the Text in a Document Modifying Text by Replacement Insert a Processing Instruction and a Comment Node Getting text values from a NodeList Finding an ID Value and Print the Element Text Edit Text by Insertion and Replacement Duplicating a Subtree Deleting Two Attributes Delete the First Child of the Root Node Creating XML Tree Creating a DocumentFragment Subtree and Appending it to the Document Creates element node, attribute node, comment node, processing instruction and a CDATA section Creates a New DOM Parse Tree Replacing a Text Node with a New CDATA Section Node Create an Empty DOM Document Adding an Attribute in DOM Document Transforming XML with XSLT Transforming an XML File with XSL Transforming XML with SAXFilters Storing properties in XML file Testing EntityReferences in Xml Splitting One Text Node into Three Reading XML from a File Modifying Text by Cutting and Pasting Locating a Node by Using Siblings Locate a Node and Change Its Content Loading properties from a XML file Listing nodes used in a document Inserting a New Entry in a List Creating an InlineStreamFilter Ignoring Comments While Parsing an XML File Handling Errors While Parsing an XML File Emitting DOCTYPE Declaration while writing XML File Converting CDATA Nodes into Text Nodes Java DOM Tutorial Creating Blank DOM Document
Ads

Reading XML from a File

     

This Example shows you how to Load Properties from the XML file via a DOM document. JAXP (Java API for XML Processing) is an interface which provides parsing of xml documents.Javax.xml.parsers is imported to provide classes for the processing of XML Documents. Here the Document BuilderFactory is used to create new DOM parsers. Some of the methods used for reading XML from a  file are described below :-

File f = new File("Document2.xml"):-Creating File from where properties are to be loaded.

DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance():-Declaring DocumentBuilderFactory to create new DOm parsers.

Element root = doc.getDocumentElement():-By this method we can have direct access to the root of the DOM Document.

NodeList list = doc.getElementsByTagName("Employee"):-NodeList is an interface that provides an ordered collection of nodes.We can access nodes from the Nodelist by their index number.

NodeList nodelist = element.getElementsByTagName("name"):-This method returns a list of element with a given tagname i.e ("name").

Xml code for the program generated is:-

<?xml version="1.0" encoding="UTF-8"?>
<Company>
  <Employee>
  <name Girish="Gi">Roseindia.net
  </name>
  </Employee>
  <Employee>
  <name Komal="Ko">newsTrack
  </name>
  </Employee>
  <Employee>
  <name Mahendra="Rose">Girish Tewari
  </name>
  </Employee>
</Company>

readxmlfromafile.java

/* 
 * @Program to load properties from XML file.
 * readxmlfromafile.java 
 * Author:-RoseIndia Team
 * Date:-10-Jun-2008
 */

import java.io.*;
import org.w3c.dom.*;
import javax.xml.parsers.*;


public class readxmlfromafile {

  public static void main(String[] argsthrows Exception {
  File f = new File("Document2.xml");
  DocumentBuilderFactory dbf = 
   DocumentBuilderFactory.newInstance
();
  DocumentBuilder db = dbf.newDocumentBuilder();
  Document doc = db.parse(f);
  new readxmlfromafile().read(doc);
  }

  public void read(Document doc) {
  Element root = doc.getDocumentElement();
  NodeList list = doc.getElementsByTagName("Employee");
  for (int i = 0; i < list.getLength(); i++) {
  Node node = list.item(i);
  if (node.getNodeType() == Node.ELEMENT_NODE) {

 Element element = (Elementnode;
 NodeList nodelist = 
  element.getElementsByTagName
("name");
 Element element1 = (Elementnodelist.item(0);
 NodeList fstNm = element1.getChildNodes();
 System.out.println("Name : " 
  
(fstNm.item(0)).getNodeValue());
  }
  }
  }
}

Output of the program:-

Name : Roseindia.net
 

Name : newsTrack
 

Name : Girish Tewari


DownLoad Source Code

     

Advertisements

Ads
Share on Google+Share on Google+

Reading XML from a File

Posted on: August 24, 2008 If you enjoyed this post then why not add us on Google+? Add us to your Circles

Advertisements

 

Discuss: Reading XML from a File  

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:1
rahulrishi
March 21, 2012
xml and java

import java.io.*; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.xml.parsers.*; import org.w3c.dom.*; import javax.xml.transform.*; import javax.xml.transform.dom.*; import javax.xml.transform.stream.*; import org.xml.sax.SAXException; public class TestingServlet extends HttpServlet { String name1=null; String requestXmlFile1=null; String requestPage1=null; String requestProviderClass1=null; String responseXmlFile1=null; String responsePage1=null; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException , IOException { response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); name1 = request.getParameter("Name"); requestXmlFile1 = request.getParameter("RequestXMLFile"); requestPage1 = request.getParameter("RequestPage"); requestProviderClass1 = request.getParameter("RequestProviderClass"); responseXmlFile1= request.getParameter("ResponseXMLFile"); responsePage1 = request.getParameter("ResponsePage"); try{ out.println(4); DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); out.println(3); DocumentBuilder documentBuilder = factory.newDocumentBuilder(); out.println(1); Document document = documentBuilder.newDocument(); out.println(1); document = documentBuilder.parse("Services.xml"); out.println(6); Element rootElement = document.createElement("Services"); document.appendChild(rootElement); Element service = document.createElement("Service"); Element name = document.createElement("Name"); name.appendChild(document.createTextNode("Search")); service.appendChild(name); Element requestXmlFile=document.createElement("RequestXMLFile"); requestXmlFile.appendChild(document.createTextNode("SearchRequest.xml")); service.appendChild(requestXmlFile); Element requestPage=document.createElement("RequestPage"); requestPage.appendChild(document.createTextNode("http://localhost:8084/WebServiceForFrontech/SearchProduct.jsp")); service.appendChild(requestPage); Element requestProviderClass=document.createElement("RequestProviderClass"); requestProviderClass.appendChild(document.createTextNode("SearchServlet")); service.appendChild(requestProviderClass); Element responseXmlFile=document.createElement("ResponseXMLFile"); responseXmlFile.appendChild(document.createTextNode("SearchResponse.xml")); service.appendChild(responseXmlFile); Element responsePage=document.createElement("ResponsePage"); responsePage.appendChild(document.createTextNode("http://localhost:8084/WebServiceForFrontech/SearchPoductResult.jsp")); service.appendChild(responsePage); rootElement.appendChild(service); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(document); StreamResult result = new StreamResult(new FileOutputStream("Services.xml")); transformer.transform(source,result ); out.println(5); }catch(Exception e){} } public void addNewService() throws IOException ,ParserConfigurationException , SAXException , TransformerConfigurationException , FileNotFoundException , TransformerException { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder documentBuilder = factory.newDocumentBuilder(); Document document = documentBuilder.newDocument(); Element rootElement = document.createElement("Services"); document.appendChild(rootElement); Element service = document.createElement("Service"); Element name = document.createElement("Name"); name.appendChild(document.createTextNode("Search")); service.appendChild(name); Element requestXmlFile=document.createElement("RequestXMLFile"); requestXmlFile.appendChild(document.createTextNode("SearchRequest.xml")); service.appendChild(requestXmlFile); Element requestPage=document.createElement("RequestPage"); requestPage.appendChild(document.createTextNode("http://localhost:8084/WebServiceForFrontech/SearchProduct.jsp")); service.appendChild(requestPage); Element requestProviderClass=document.createElement("RequestProviderClass"); requestProviderClass.appendChild(document.createTextNode("SearchServlet")); service.appendChild(requestProviderClass); Element responseXmlFile=document.createElement("ResponseXMLFile"); responseXmlFile.appendChild(document.createTextNode("SearchResponse.xml")); service.appendChild(responseXmlFile); Element responsePage=document.createElement("ResponsePage"); responsePage.appendChild(document.createTextNode("http://localhost:8084/WebServiceForFrontech/SearchPoductResult.jsp")); service.appendChild(responsePage); rootElement.appendChild(service); TransformerFactory transformerFactory = TransformerFactory.newInstance(); Transformer transformer = transformerFactory.newTransformer(); DOMSource source = new DOMSource(document); StreamResult result = new StreamResult(new FileOutputStream("Services.xml")); transformer.transform(source,result ); } } this code doent work properly please help me

Ads

 

Ads