所以过去几天我一直在玩 Sax,我完全无法处理我遇到的这个问题。
假设我有以下 xml
<PowerSystemRegions>
<PowerSystemRegion>
<RegionId>1</RegionId>
<RegionName>New England</RegionName>
<Status>Normal</Status>
<DateUpdated>2011-12-22T10:55:51.000-05:00</DateUpdated>
</PowerSystemRegion>
<PowerSystemRegion>
我想首先检查以确保区域名称是新英格兰,然后根据该名称提取状态,但我认为它不会加载下一个 qName 或任何内容,因为它会再次从 main 调用。
到目前为止,这是我所拥有的,但我完全陷入了困境:
public void startElement (String uri, String name, String qName, Attributes atts) {
boolean region = false;
boolean regionName = false;
boolean regionStatus = false;
if (qName.compareTo("RegionName") == 0) {
region = true;
if(atts.getValue(0).compareTo("New England") == 0){
}
if (currentStatus == null){
String cCond = atts.getValue(0);
currentStatus = cCond;
}
}
}
比较名称是我的想法,一旦设置了所有 3 个布尔值,我就没事了……但后来我突然想到,由于字符串中只有一个 qName,它不会那样工作……Halp?