我用SAX的方法解析XML文件,比如一个xml文件的结构是这样的(没有标签):
<?xml version="1.0" encoding="utf-8"?>
<person>
    <name>sam</name>
    <age>21</age>
</person>
<person>
    <name>jam</name>
    <age>12</age>
<person>调用方法:
RootElement rootElement = new RootElement("person");
后得到的结果是什么样的?请高手指点。先这里谢过!

解决方案 »

  1.   

    首先说一下,您的这种XML本身就不标准,应该改成
    <?xml version="1.0" encoding="utf-8"?>
    <persons>
     <person>
      <name>sam</name>
      <age>21</age>
     </person>
     <person>
      <name>jam</name>
      <age>12</age>
     <person>
    </persons>
      

  2.   

    RootElement rootElement = new RootElement("person");
    得到一个具有给定名称“person”的新根元素
    ps:你的xml文件有点小错误吧 最后那个person应该是</person>
      

  3.   

    RootElement root = new RootElement("AppConfig");
    Element reset = root.getChild("reset");
    Element screens = root.getChild("Screens");
    reset.setStartElementListener(new StartElementListener() {
                public void start(Attributes attributes) {
                 //XXX            }
            });
    screen.setStartElementListener(new StartElementListener() {
                public void start(Attributes attributes) {
    ///             XXX
                }
            });
    //MAY SOME MORE NODES HERE
    //...InputStream is = c.getAssets().open("AppConfig.xml");
                Xml.parse(is, Xml.Encoding.UTF_8, root.getContentHandler());
                is.close();
      

  4.   

    解析应该是靠触发执行的,如果去解析LZ提供的错误格式的话在没结束前再次触发跟tag应该会出错。当然前提是没提示xm格式错误。
      

  5.   

    我写的xml只是一个例子,解析服务器上的xml格式错误我觉得几乎是没有的。你说解析是靠触发执行的,什么意思?