Home Xml Sax Get XML Elements
Questions:Ask|Latest



Get XML Elements
Posted on: May 25, 2007 By Deepak Kumar
In this section you will learn to develop a simple java program to get the names of all elements contained in the XML document .

Get XML Elements

     

In this section you will learn to develop a simple java program to get the names of all elements contained in the XML document .

Description of the program:

The following program teaches to parse the elements and retrieve  their names, from a  XML document.    

Create a java file to retrieve the starting elements. When you run this program it asks for a XML document. This is used as a command line argument. If  you don't enter any file, the program throws an exception displaying "java.lang.ArrayIndexOutOfBoundsException: 0 at XMLElements.main( XML Elements.java:17)". 

The parse() method of SAXParser class reads the contents. The SAXParserFactory  is a factory API that enables applications to configure and obtain a SAX  parser to parse XML documents. The startElement() method retrieves all starting elements and prints them on the console. Whenever an error  occurs  it throws the SAXException.  

Here is the XML File: Employee-Detail.xml

<?xml version = "1.0" ?>
<Employee-Detail>

<Employee>
<Emp_Id> E-001 </Emp_Id>
<Emp_Name> Vinod </Emp_Name>
<Emp_E-mail> Vinod1@yahoo.com </Emp_E-mail>
</Employee>

<Employee>
<Emp_Id> E-002 </Emp_Id>
<Emp_Name> Amit </Emp_Name>
<Emp_E-mail> Amit2@yahoo.com </Emp_E-mail>
</Employee>

<Employee>
<Emp_Id> E-003 </Emp_Id>
<Emp_Name> Deepak </Emp_Name>
<Emp_E-mail> Deepak3@yahoo.com </Emp_E-mail>
</Employee>

</Employee-Detail>

Here is the Java File: XMLElements.java

import javax.xml.parsers.*;
import org.xml.sax.*;
import org.xml.sax.helpers.*;

public class XMLElements{
  public static void main(String[] args) {
  try{
  SAXParserFactory parserFact = SAXParserFactory.newInstance();
  SAXParser parser = parserFact.newSAXParser();
  System.out.println("XML Elements: ");
  DefaultHandler handler = new DefaultHandler(){
  public void startElement(String uri, String lName, 
  String ele, Attributes attributes
)throws SAXException{
  //print elements of xml
  System.out.println(ele);
  }
  };
  parser.parse(args[0], handler);
  }
  catch (Exception e){
  e.printStackTrace();
  }
  }
}

Download this example 

Output of program:

C:\vinod\xml\comXML>javac XMLElements.java

C:\vinod\xml\comXML>java XMLElements Employee-Detail.xml
XML Elements:
Employee-Detail
Employee
Emp_Id
Emp_Name
Emp_E-mail
Employee
Emp_Id
Emp_Name
Emp_E-mail
Employee
Emp_Id
Emp_Name
Emp_E-mail

     


Recommend the tutorial

Ask Questions?    Discuss: Get XML Elements   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments
keerthana
September 15, 2011
xml parser

i tried this code but it displays the exception without asking any xml file.please help me out..