Voici un fichier xml exemple que je suis en train de tirer des données à partir de:expression XPath pour revenir valeur basée sur la valeur des frères et soeurs
<rss>
<channel>
<item>
<title>First Title</title>
<description>description text</description>
<component>Distribution - Maintain</component>
<timeoriginalestimate seconds="3600">1 hour</timeoriginalestimate>
<timespent seconds="1860">31 minutes</timespent>
</item>
<item>
<title>Second Title</title>
<description>description text</description>
<component>Reporting - Security</component>
<timeoriginalestimate seconds="3600">1 hour</timeoriginalestimate>
<timespent seconds="1860">31 minutes</timespent>
</item>
<item>
<title>third Title</title>
<description>description text</description>
<timeoriginalestimate seconds="5400">1 hour, 30 Minutes</timeoriginalestimate>
<timespent seconds="2700">45 minutes</timespent>
</item>
<item>
<title>Fourth Title</title>
<description>description text</description>
<component>Usability</component>
</item>
<item>
<title>Fifth Title</title>
<description>description text</description>
<component>Distribution - Maintain</component>
<timeoriginalestimate seconds="3600">1 hour</timeoriginalestimate>
<timespent seconds="7200">2 hours</timespent>
</item>
</channel>
</rss>
Je veux recueillir les timeoriginalestimate
et timespent
nœuds par component
valeur. Je veux stocker la valeur du component
soit dans une carte ou un hachage comme la clé et la valeur à la différence totale de timeoriginalestimate
et timespent
K = « Distribution - maintain » V = 2heures-2hours31minutes
certains des item
« s ne sera pas un component
et quelques-uns des component
» s auront pas les valeurs de temps. Dans ce cas, j'aimerais que les valeurs temporelles viennent s'ajouter au total cumulé pour un composant «autre». J'écris ceci dans java et j'ai l'intention d'imprimer un rapport qui montrera combien de temps a été estimé par rapport au temps réellement passé par chaque composant. Je ne suis pas sûr de savoir comment s'y prendre.
Toute aide serait grandement appréciée. Merci!
Exemple de code pour compter les occurrences d'une valeur:
private XPath featureXPath = XPath.newInstance("count(//rss/channel/item/type[text()='New Feature'])");
LinkedHashMap<String, Double> metrics = new LinkedHashMap<String, Double>();
metrics.put("New Features", (Double)featureXPath.selectSingleNode(doc));
Je ne suis pas sûr de savoir comment je peux ajouter les valeurs de temps à une clé inconnue et ajouter que les valeurs de temps pour que leur clé
respective
Un code de votre côté que vous avez essayé? –
J'ai ajouté un peu de code qui a fonctionné pour accomplir une tâche différente ... cela me dira juste le nombre de fois qu'un type d'élément a la valeur de "nouvelle fonctionnalité". – robbie