0

私はxmlドキュメントが初めてです。上記のxmlを抽出して配列のコレクションに入れる必要があります。

          <billingOrderSummary>
               <Order OrderNo="1">
             <Name>Teleflora's Fall in Love - Premium</Name>
            <Img>/Images/products/SW0_372709.jpg</Img>
              <EditItem>detail_id=32734269&amp;frompage=payment&amp;checkoutflag=2</EditItem>
            <DeleteItem>ReloadOrderdetails(32734269)</DeleteItem>
            <Item>
               <Name>price</Name>
               <Value> $59.95</Value>
            </Item>
            <Item>
             <Name>Service Fee:</Name>
             <Value> $10.00</Value>
            </Item>

             <Item>
               <Name>deliver on 8/31/2013 to</Name>
                <Value>Richard Timbo's Test Store</Value>
                <Value>1 Main St &#13;
                     San Jose, CA10126&#13;
                      United States</Value>
                 <Value>978-978-9789</Value>
                 </Item>
                <Item>
                   <Name>card type</Name>
                    <Value>Father's Day</Value>
                 </Item>

                 <Item>
                   <Name>message:</Name>
                    <Value>gtreg</Value>
                   <Value>gfdg</Value>
                  </Item>
             </Order>
        </billingOrderSummary>

これは私が試したコードです。

                NodeList nodeList = gotoBillingPage.getElementsByTagName('Order');
        print 'nodeList'+ nodeList
        for (int temp = 0; temp < nodeList.getLength(); temp++) {

                   Node nNode = nodeList.item(temp);

                   System.out.println("\nCurrent Element :" + nNode.getNodeName());

                   if (nNode.getNodeType() == Node.ELEMENT_NODE) {

                       Element eElement = (Element) nNode;

                       System.out.println("Staff id : " + eElement.getAttribute("OrderNo"));

                       System.out.println("First Name : " + eElement.getElementsByTagName("Item").item(0).getTextContent());

                       int item = eElement.getElementsByTagName("Item").getLength();

ここで、各の子を抽出することを知っています。

注: ここでは最後に、1 人の子供と 2 人の子供がいます。

それらの値を抽出する方法も知っています。

誰でも私を助けることができますか?

4

1 に答える 1

0

次のコードを試して、すべての Item ノードのすべての子ノードを抽出してください。

NodeList itemElements = document.getElementsByTagName("item");
for (int i = 0; i < itemElements.getLength(); i++)
{
    Element itemElement = (Element) itemElements.item(i);
    NodeList childNodes = itemElement.getChildNodes();
    for (int j = 0; j < childNodes.getLength(); j++)
    {
        Node childNode = childNodes.item(j);

        if (!(childNode instanceof Element)) {
            continue;
        }

        Element childElement = (Element) childNode;

        ... your comes code here ...
    }
}
于 2013-08-29T06:18:35.150 に答える