我想在Android上使用XMLPullParser读取此xml文件,但是当涉及到KeyValues部分时,它会抛出异常,因为标记名称在模型中并不相同。 标签是用户指定的,每次KeyValues部分具有不同的名称。我该如何读取这些值?
<Shot>
<ShotGUID>1</ShotGUID>
<Title>aaa</Title>
<Group>bbb</Group>
<SGroup>ccc</SGroup>
<StartTime>00:00:00.00</StartTime>
<EndTime>00:00:00.00</EndTime>
<FileName>110.jpg</FileName>
<Dscp></Dscp>
<KeyValues>
<name>ddd</name>
<family>eee</family>
<date>20.3</date>
</KeyValues>
</Shot>
<Shot>
<ShotGUID>2</ShotGUID>
<Title>qqq</Title>
<Group>www</Group>
<SGroup>rrr</SGroup>
<StartTime>12:00:00.00</StartTime>
<EndTime>13:00:00.00</EndTime>
<FileName>20.jpg</FileName>
<Dscp>hello</Dscp>
<KeyValues>
<email>example@yahoo.com</email>
<index>mmm</index>
<years>562</years>
<factory>nnn</factory>
</KeyValues>
</Shot>
答案 0 :(得分:0)
在键值中使用此
case "email":
String a = parser.nextText();
break;
case "index":
String b = parser.nextText();
break;
case "years":
String c = parser.nextText();
break;
case "factory":
String d = parser.nextText();
break;
case "name":
String e = parser.nextText();
break;
case "family":
String f = parser.nextText();
break;
case "date":
String g = parser.nextText();
break;
文件中可能包含的所有模式均应写入,如果其中某些模式不存在,则应为null。