Faire la somme de données groupées
Bonjour! Je suis entrain de réaliser un programme java qui doit inscrire chaque nom de clients et la somme de leur transactions à l'écran. Je n'arrive pas à faire imprimer la somme des transactions. Quelqu'un pourrait m'aider? Merci :)
Voici le fichier XML :
Code:
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> |
Mon code java :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
| 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");
NodeList nl2 = racine.getElementsByTagName("transaction");
for (int i = 0; i < nl.getLength(); ++i) {
Element client = (Element) nl.item(i);
Element transaction = (Element) nl2.item(i);
System.out.println("Nom du client : " + client.getAttribute("nom"));
System.out.println("Somme : " + transaction.getAttribute("montant"));
}
}
} |