0
我试图用SAX标识一个属性。我的XML是如下Android中的SAX解析搜索属性
<DAY VALUE="1">
<BREAKFAST>0700</BREAKFAST>
<LUNCH>1200</LUNCH>
<DINNER>1900</DINNER>
</DAY>
<DAY VALUE="2">
<BREAKFAST>0730</BREAKFAST>
<LUNCH>1230</LUNCH>
<DINNER>1930</DINNER>
</DAY>
和我的startElement代码如下:
@Override
public void startElement(String uri, String localName, String qName,
Attributes attributes) throws SAXException {
elementOn = true;
if (localName.equals("DAY"))
{
data = new XMLGettersSetters();
}
}
上面的代码将找到的第一个元素"DAY"
,给我的内容,但没有剩余DAY元素。
有没有一种方法可以搜索属性?我旨在获取当月的当天,然后在xml中搜索当天。例如,如果今天是第二个,然后我想在XML文件中搜索DAY VALUE="2"
并获得子元素
==编辑
如果我修改我的XML来
<DAY_1>
<BREAKFAST>0700</BREAKFAST>
<LUNCH>1200</LUNCH>
<DINNER>1900</DINNER>
</DAY_1>
<DAY_2>
<BREAKFAST>0730</BREAKFAST>
<LUNCH>1230</LUNCH>
<DINNER>1930</DINNER>
</DAY_2>
和代码:
if (localName.equals("DAY_2"))
{
data = new XMLGettersSetters();
}
我得到了NullPointerException
但如果类logcat中没有标明该名称。它指的是其他类,但我注释掉那些行
是的,我已经试过了,但应用程序崩溃,当我尝试使用天变量。 – Santiago
然后发布您的新片段,并且错误日志 –
'if(localName.equals(“DAY”)){ String day =“”; (attributes.getValue(“VALUE”)!= null){ day = attributes.getValue(“VALUE”); System.out.println(“VALUE:”+ day); } }' 它得到第一个元素与子元素。我在日志中获得'VALUE:1',但是当它进入元素时,我得到一个NullPointer异常 - 无法启动活动SAXParserActivity –
Santiago