フォーマットが不十分で、ばかげた質問になる可能性があることをお詫びします...私はこれらの分野では初心者です。
私が楽しんでいる趣味、その趣味に必要なアイテム、およびそれらのアイテムの価格を表すために作成した単純な XML ドキュメントがあります。XMLファイルを読み取り、ノードを使用してその内容を出力するJavaアプリケーションを作成しています。プログラムのその部分が正しく動作するようになりました。
しかし、私が理解しようとしているのは、私がすでに引っ張っている「価格」の値を表す値を取り、それらの合計を見つけることは可能ですか?
インターネットで複数の異なるスレッドを読みましたが、いずれも私のシナリオに適合していないようです。
XML:
<?xml version="1.0"?>
<Wakeboarding>
<gear>
<description> Board </description>
<price currency = "USD"> 400.00 </price>
</gear>
<gear>
<description> Bindings </description>
<price currency = "USD"> 200.00 </price>
</gear>
<gear>
<description> Helmet </description>
<price currency = "USD"> 75.00 </price>
</gear>
<gear>
<description> Lifevest </description>
<price currency = "USD"> 75.00 </price>
</gear>
<gear>
<description> Handle </description>
<price currency = "USD"> 50.00 </price>
</gear>
</Wakeboarding>
ジャワ:
public class HobbyReader
{
public static void main(String[] args) throws ParserConfigurationException, SAXException, IOException
{
try
{
File fXmlFile = new File("/Users/Pete/Documents/NetBeansProjects/HobbyXML/src/hobby.xml");
DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
Document doc = dBuilder.parse(fXmlFile);
doc.getDocumentElement().normalize();
System.out.println("My Hobby: " + doc.getDocumentElement().getNodeName());
NodeList nList = doc.getElementsByTagName("gear");
System.out.println("----------------------------");
for (int temp = 0; temp < nList.getLength(); temp++)
{
Node nNode = nList.item(temp);
if (nNode.getNodeType() == Node.ELEMENT_NODE)
{
Element eElement = (Element) nNode;
System.out.println("Gear Description: " + eElement.getElementsByTagName("description").item(0).getTextContent());
System.out.println("Price: " + eElement.getElementsByTagName("price").item(0).getTextContent());
}
}
出力:
run:
My Hobby: Wakeboarding
----------------------------
Gear Description: Board
Price: 400.00
Gear Description: Bindings
Price: 200.00
Gear Description: Helmet
Price: 75.00
Gear Description: Lifevest
Price: 75.00
Gear Description: Handle
Price: 50.00
助けてくれてありがとう!