J'ai un code java pour lire les nœuds XML, je veux ajouter dans l'addition et je veux aussi lire la valeur du nœud parent.Comment lire la valeur de balise nœud parent XML dans android
mon exemple de fichier XML est ci-dessous:
<breakfast_menu><food id=1><name> Belgian Waffles </name><price> $5.95 </price><description> two of our famous Belgian Waffles with plenty of real maple syrup </description><calories> 650 </calories></food><food id=2><name>Strawberry Belgian waffles</name><price>$7.95</price><description>light Belgian waffles covered with strawberries and whipped cream</description><calories>900</calories></food></breakfast_menu>
et mon code pour parser XML est:
public static String getProductItem(String pid, String item) {
try {
url = new URL("");
urlConnection = url.openConnection();
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
}
try {
dBuilder = dbFactory.newDocumentBuilder();
} catch (ParserConfigurationException e) {
}
try {
doc = dBuilder.parse(urlConnection.getInputStream());
} catch (SAXException e) {
} catch (IOException e) {
}
doc.getDocumentElement().normalize();
NodeList nList = doc.getElementsByTagName("food");
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
data = getTagValue(item, eElement);
}
}
doc = null;
dBuilder = null;
return data;
}
private static String getTagValue(String sTag, Element eElement) {
NodeList nlList = eElement.getElementsByTagName(sTag).item(0)
.getChildNodes();
Node nValue = (Node) nlList.item(0);
return nValue.getNodeValue();
}
Ce que je veux faire est de lire la valeur "id" de la nourriture, donc si je suis à la recherche d'un aliment, il ne vérifie que les nœuds alimentaires, dont l'identifiant correspond à l'identifiant du nœud alimentaire.
Si je lis par identifiant de balise, il lit toutes les balises et non spécifiquement une balise. Comment l'atteindre?
Note: Je ne sais pas comment utiliser Xpath dans android; alors suggérez quelques autres options pls –