我有以下格式的XML文件,
<zodiaco signo="Aries">
<prediccion tipo="texto">
Hoy te dispersas un poco...Solo tienes que concentrarte en tus problemas para poder solucionarlo. ¡No dejes que nada te desconcentre!
</prediccion>
<prediccion tipo="amor">2</prediccion>
<prediccion tipo="salud">5</prediccion>
<prediccion tipo="trabajo">2</prediccion>
<prediccion tipo="dinero">2</prediccion>
<prediccion tipo="numero_suerte">32</prediccion>
<prediccion tipo="pclave"/>
</zodiaco>
我想获得zodiaco节点的“signo”值。请帮帮我。
答案 0 :(得分:0)
private void parsePrediction(int ResId){
try {
XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
XmlPullParser parser = factory.newPullParser();
parser.setInput(getResources().openRawResource(ResId), null);
int parserEvent=parser.getEventType();
String signo;
while(parserEvent !=XmlPullParser.END_DOCUMENT) {
switch (parserEvent) {
case XmlPullParser.START_TAG:
String tag = parser.getName();
if (tag.compareTo("zodiaco") == 0) {
signo = (parser.getAttributeValue(null,"signo"));
}
break;
}
parserEvent=parser.next();
}
}
catch(Exception e) {
e.printStackTrace();
}
}
在ResId中,您输入了xml文件的资源ID。您可以通过以下方式获取ID:
int id = context.getResources().getIdentifier("the name of your file", "the dir where the file is", context.getPackageName());
希望它有效!