j'ai un fichier XML :
je veux calcule la somme des valeurs de l'attribut « montant » pour chaque client pour avoir ce résultat :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 <?xml version="1.0" encoding="ISO-8859-1" ?> <liste> <client nom="Jean Charles"> <transaction montant="500" /> <question>Quelle est la dernière marque?</question> <transaction montant="1200" /> </client> <client nom="Pierre Élisabeth"> <transaction montant="600" /> <transaction montant="800" /> <question>Où puis-je trouver le modèle 2002?</question> <transaction montant="2000" /> </client> </liste>
voila mon programme :Nom du client: Jean Charles
Somme: 1700
Nom du client: Pierre Élisabeth
Somme: 3400
j'ai réussie a avoir les nom des clients mes je connais pas la fonction vraiment qui peu calculer les sommes des montants avec DOM merci pour votre aide .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import org.w3c.dom.*; import javax.xml.parsers.*; public class transactions { public static void main(String[] args) throws Exception { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder parser = factory.newDocumentBuilder(); Document doc = parser.parse(args[0]); Element racine = doc.getDocumentElement(); NodeList nl = racine.getElementsByTagName("client"); for (int i = 0; i < nl.getLength(); ++i) { Element client = (Element) nl.item(i); NodeList tnom = client.getElementsByTagName("client"); Element nom = (Element) tnom.item(0); System.out.println("nom du client :" +client.getAttribute("nom")); NodeList mn = doc.getElementsByTagName("transaction"); System.out.println("somme :" +mn.getLength("montant")); } } }
Partager