实际上,我试图仅获取一个特定节点的值,但节点标记位于 xml 文档中的许多地方。这是xml片段
<t:Address xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><t:Name>XYZ Conference Rooms</t:Name><t:EmailAddress>XYZConferenceRooms@abc.co.in</t:EmailAddress><t:RoutingType>SMTP</t:RoutingType><t:MailboxType>PublicDL</t:MailboxType></t:Address><t:Address xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"><t:Name>ABC Conference Rooms</t:Name><t:EmailAddress>ABCConferenceRooms@abc.co.in</t:EmailAddress><t:RoutingType>SMTP</t:RoutingType><t:MailboxType>PublicDL</t:MailboxType></t:Address>
问题是我只想要来自上述 xml 的值(ABCConferenceRooms@abc.co.in)。以上只是一个代码片段,我们在 xml 中有 10 个电子邮件地址值。
当我在我的解析器中这样做时
String value;
String url;
String confName;
String confEmail;
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
value = qName;
confEmail = qName;
confName = qName;
}
@Override
public void characters(char[] ch, int start, int length)
throws SAXException {
if (value.equals("Value")) {
String OperationName1Text = new String(ch, start, length);
info.setValue(OperationName1Text);
Log.d("URL", OperationName1Text);
}
else if (confName.equals("t:EmailAddress")) {
String getEmail = new String(ch, start, length);
info.setEmail(getEmail);
Log.d("Email", getEmail);
}
}
@Override
public void endElement(String uri, String localName, String qName)
throws SAXException {
value = qName;
confEmail = qName;
confName = qName;
}
我只能显示所有的电子邮件地址,但我只想要上面提到的一个。需要对代码进行哪些更改。?
任何在类似情况下工作的人都可以提供帮助谢谢迈克