how to store an xml tag as an array in java

后端 未结 3 1442
醉梦人生
醉梦人生 2021-01-17 08:06

in my app i am parsing an xml file. In the xml file i am having 50 tags of the same name question , now i want to store all the tag named as question as an arra

3条回答
  •  失恋的感觉
    2021-01-17 08:18

    You can use the DOM parser, here is a link to the DocumentBuilder class.

    Once you use the parse method out of DocumentBuilder and get your Document you can use a function like this to get the items as a NodeList:

        public static NodeList getNodesByName(Document doc, String nodeName)
        {
                Element docEle = doc.getDocumentElement();
                NodeList list = docEle.getElementsByTagName(nodeName);
                return list;
        }
    

    In your case you would pass in the Document object you created by parsing the XML and then question as your nodeName.

    Once you have your NodeList, you can iterate through it using a for loop and the .item() method.

                if(list != null && list.getLength() > 0) {
                    for(int i = 0 ; i < list.getLength();i++) {
                        Element element = (Element)list.item(i);
                        String textVal = element.getFirstChild().getNodeValue();
                        //Once you get the value you can put it into your
                        //array or just use it here.
                    }
                }
    

提交回复
热议问题