Simple XML parsing example of nanoxml component
Package com. aspboy. Base. Action. util;
Import java. util. iterator;
Import java. util. vector;
Import net. n3.nanoxml. ixmlelement;
Import net. n3.nanoxml. ixmlparser;
Import net. n3.nanoxml. ixmlreader;
Import net. n3.nanoxml. stdxmlreader;
Import net. n3.nanoxml. xmlparserfactory;
Public class nanoxmltest {
Public static void main (string [] ARGs ){
// Resolution
// String body = "<m A = '1' B = '2'> <a id = 'vvv '> 111111 </a> <B> 222222 </B> </m> ";
// String body = "<m A = '1' B = '2'> <a id = '1'> 111111 </a> <a id = '2'> 222222 </a> <B id = '000000'> 32222 </B> </m> ";
String body = "<m a = '1' B = '2'> <a id = '1'> 111111 </a> <c id = '2'> 222222 </c> <B id = '000000'> 32222 </B> </m> ";
IXMLParser xmlParser = null;
IXMLReader xmlReader = null;
Try {
Long a = System. currentTimeMillis ();
XmlParser = XMLParserFactory. createdefaxmlxmlparser ();
System. out. println (System. currentTimeMillis ()-a + "ms"); // 1
A = System. currentTimeMillis ();
XmlReader = StdXMLReader. stringReader (body );
XmlParser. setReader (xmlReader );
IXMLElement header = (IXMLElement) xmlParser. parse ();
// IXMLElement info = header. getFirstChildNamed ("m ");
// System. out. println (info. getAttribute ("",""));
System. out. println (header. getAttribute ("",""));
System. out. println (header. getAttribute ("B ",""));
System. out. println (header. getContent ());
// System. out. println (header. getFirstChildNamed ("a"). getContent ());
System. out. println (header. getFirstChildNamed ("B"). getContent ());
IXMLElement node1 = header. getFirstChildNamed ("B ");
System. out. println (node1.getAttribute ("id ",""));
// System. out. println (header. getChildrenCount ());
Vector v = header. getchildrennamed ("");
For (INT I = 0; I <v. Size (); I ++)
{
Ixmlelement AI = (ixmlelement) v. elementat (I );
Long id = ai. getattribute ("ID", 0 );
System. Out. println ("ID =" + ID + "=" + AI. getcontent ());
}
// Ixmlelement node = header. getfirstchildnamed ("");
Iterator it = header. getchildren (). iterator ();
While (it. hasnext ())
{
Ixmlelement inode = (ixmlelement) it. Next ();
Long id = inode. getattribute ("ID", 0 );
System. Out. println ("ID =" + id );
}
} Catch (exception e ){
E. printstacktrace ();
}
}
}