android xml解析sub到subtag并存储在hashmap中

时间:2016-01-27 10:06:36

标签: android xml parsing

大家好,我是XML Parsing的新手

我有1 xml这样的

 <TAGMAIN>
       <TYPE>THIS IS MY DATA</TYPE>
       <SUCESSCODDE>0</SUCESSCODDE>
       <SUCESSCODDEMESSAGE>Success</SUCESSCODDEMESSAGE>
       <ANOTHERSUBTAG>
          <ENTRY>
             <NUMBER>1234567</NUMBER>
             <MobileNo>12345555555</MobileNo>
             <TOTAL>1.00</TOTAL>
             <TransactionStatus>Success</TransactionStatus>
          </ENTRY>
             <ENTRY>
             <NUMBER>234555</NUMBER>
             <MobileNo>17777777</MobileNo>
             <TOTAL>1.00</TOTAL>
             <TransactionStatus>Success</TransactionStatus>
          </ENTRY>
</ANOTHERSUBTAG>
</TAGMAIN>

我像这样解析它

 public HashMap<String, String> parse(final Element e) {
          HashMap<String, String> responseMap = new HashMap<String, String>();
          String NAME="";
            final NodeList children = e.getChildNodes();
            for (int i = 0; i < children.getLength(); i++) {
                final Node n = children.item(i);

                if (n.getNodeType() == Node.TEXT_NODE) {
                    System.out.println(n.getTextContent()+" HERE!!!!!!!!");

                System.out.println("SIZE !!!***"+responseMap.size());
                } else if (n.getNodeType() == Node.ELEMENT_NODE) {
                    NAME=n.getNodeName();
                    System.out.print(n.getNodeName() + " : ");

                    parse((Element) n);
                    //responseMap.put(n.getNodeName(), n.getTextContent());
                    //System.out.println(n.getTextContent()+" HERE!!!!!!!!");



                }
            }
            return responseMap;
        }

解析工作...现在我想将它存储为&lt;'NUMBER','123456'&gt; &LT; 'NUMBER', '123456' &GT;比如标记名和值

或暗示其他方式

请帮忙.. 感谢..

1 个答案:

答案 0 :(得分:0)

您应该使用getAttribute(String name)方法

  

按名称检索属性值。

     

参数名称
  要检索的属性的名称。

     

返回

     

作为字符串的Attr值,如果该属性不是空字符串   具有指定或默认值。

例如,<entity number="134566">。您可以在<entity>

元素处调用此方法