ksoap2相当于didStart / didEndElement?

时间:2011-08-04 12:05:18

标签: java android xml ksoap2 equivalence

我今天的问题是,我很好奇java使用ksoap2 - 库来解析逐个元素是否存在近亲和/或等价。

例如 objective-c

public void didEndElement(args....){

    if occurring element is thisElement
    //do something with the value in the element


}

public void didStartElement(args....){

    if occurring element is thisElement
    //do something with the value in the element


}

java

SoapObject foo = (SoapObject)bar.getProperty(enum);

aString = foo.getProperty(enum);

aNotherString = foo.getProperty(anotherEnum);

所以,基本上,我们想要做的是,

即兴java语法:

if(currentElement == "myElement")
aVar = valueInElement;
// or
a[1] = valueInElement;

我知道这可能要求很多,但是如果可能的话,我可以获得有关此信息的任何指示或提示。

1 个答案:

答案 0 :(得分:1)

我认为SAX Parser可以帮助您。与此链接一样:http://www.androidpeople.com/android-xml-parsing-tutorial-using-saxparser

在那里,创建了一个名为MyXmlHandler的类。这个扩展了DefaultHandler类,允许您覆盖startElement和endElement方法。

@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {}

@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {}

@Override
public void characters(char[] ch, int start, int length)
throws SAXException {}

互联网上有很多教程,告诉你如何使用这种方法。链接中的格式非常糟糕,需要找到更好的格式。