![]() |
The Java Developers Almanac 1.4Order this book from Amazon. |
e550. Determining the Parsing Location of an XML SAX ParserTo get the current URI and location of a SAX parser during parsing, you need to obtain aLocator object. This object can be obtained
by installing a ContentHandler and overriding the
setDocumentLocator() method. The SAX parser will call this
method and deliver the Locator object that you can use anytime it
delivers an event (i.e., invokes a callback method in a handler). This
method will be called before any other ContentHandler method.
Note: Not all SAX parser support a This example captures the // Create a handler for SAX events DefaultHandler handler = new MyHandler(); // Parse an XML file using SAX; // e517 The Quintessential Program to Parse an XML File Using SAX parseXmlFile("infilename.xml", handler, false); // This class listens for startElement SAX events static class MyHandler extends DefaultHandler { Locator locator; public void setDocumentLocator(Locator locator) { this.locator = locator; } // This method is called when an element is encountered public void startElement(String namespaceURI, String localName, String qName, Attributes atts) { if (locator != null) { int col = locator.getColumnNumber(); int line = locator.getLineNumber(); String publicId = locator.getPublicId(); String systemId = locator.getSystemId(); } } }
e549. Getting the Attributes of an Element During XML SAX Parsing © 2002 Addison-Wesley. |