簡體   English   中英

修改現有的XML,添加和刪除Java節點

[英]Modify existing XML, adding and deleting nodes java

現有的XML

<ItemLookupResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2013-08-01">
     <OperationRequest>
           <Arguments>xyz</Arguments>
     </OperationRequest>
     <Items>
        <Item>
            <ItemId>123<ItemId>
            <CustomerReviews>
                  <IFrameURL>someurl</IFrameURL>
                  <HasReviews>true</HasReviews>
            </CustomerReviews>
            <EditorialReviews>
                  <Content>text</Content>
            </EditorialReviews>  
        <Item>
     </Items>

需要將其轉換為

<ItemLookupResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2013-08-01">
     <OperationRequest>
           <Arguments>xyz</Arguments>
     </OperationRequest>
     <Items>
        <Item>
            <ItemId>123<ItemId>
            <CustomerReviews>
                  <CustomerReview>
                         <ReviewText>abc<ReviewText>
                         <ReviewDate>May 24, 2015<ReviewDate>
                  </CustomerReview>
                  <CustomerReview>
                         <ReviewText>def<ReviewText>
                         <ReviewDate>June 24, 2014<ReviewDate>
                  </CustomerReview>
                  <HasReviews>true</HasReviews>
            </CustomerReviews>
            <EditorialReviews>
                  <Content>text</Content>
            </EditorialReviews>  
        <Item>
     </Items>

我能夠刪除IFrameURL並能夠在HasReviews之前插入節點CustomerReview,但是如何在CustomerReview中添加更多節點。 到目前為止,這是我使用其他Stack Overflow Post實現的

<ItemLookupResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2013-08-01">
     <OperationRequest>
           <Arguments>xyz</Arguments>
     </OperationRequest>
     <Items>
        <Item>
            <ItemId>123<ItemId>
            <CustomerReviews>
                  <CustomerReview>hello</CustomerReview>
                  <CustomerReview>hello</CustomerReview>
                  <CustomerReview>hello</CustomerReview>
                  <HasReviews>true</HasReviews>
            </CustomerReviews>
            <EditorialReviews>
                  <Content>text</Content>
            </EditorialReviews>  
        <Item>
     </Items>

PS:XML結構的末尾帶有/ ItemLookupResponse,但在代碼中不可見。

一整天的時間后,我想通了。

這是W3Schools的鏈接,我用來完成工作。 較小的區別是,使用item(index)函數訪問特定的數組位置。 例如,以下代碼中的第三行可以替換為x=xmlDoc.getElementsByTagName("book").item(0); 同時使用DOM Java。

xmlDoc=loadXMLDoc("books.xml");
newel=xmlDoc.createElement("edition");
x=xmlDoc.getElementsByTagName("book")[0];
x.appendChild(newel);

其他功能也是如此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM