如何在java中将xml标签存储为数组

2022-01-10 00:00:00 arrays xml-parsing java

在我的应用程序中,我正在解析一个 xml 文件.在 xml 文件中,我有 50 个同名的标签 question ,现在我想将所有名为 question 的标签存储为一个数组....

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 array....

在保存的这些标签中,我只想将一个问题标签放置在文本视图中......

Among those tags saved i want only one question tag to be placed in a text view....

如何执行此操作....请帮助我.....

how to perform this....pls help me.....

推荐答案

public class CustomHandler extends DefaultHandler {

    private ArrayList<String> questionList;
    private boolean questionBuffering;
    private StringBuilder sb;



    @Override
    public void startDocument() throws SAXException {
    questionList = new ArrayList<String>();
    } 

    @Override
    public void endDocument() throws SAXException {
    } 

    @Override
    public void startElement(String namespaceURI, String localName, String qName, Attributes atts) throws SAXException {
        if (localName.equals("question")) {
            questionBuffering = true;
        }

    }


    @Override
    public void characters(char ch[], int start, int length) {
        if(questionBuffering) {
            sb.append(ch, start, length);
        }

    } 

    @Override
    public void endElement(String namespaceURI, String localName, String qName) throws SAXException {
        if (localName.equals("question")) {
            questionBuffering = false;
        questionList.add(sb.toString());
        }
    }

    public ArrayList<String> getResult() {
        return questionList;
        };
    }
}

相关文章