簡體   English   中英

如何在Java中同時查詢兩個XML文件?

[英]How to Query two XML files simultaneously in Java?

在我的場景中,我有兩個XML文件,我想同時查詢這些文件。

文件1,publishers.xml

<publishers>
    <publisher pubid="1" name="ABC" />
    <publisher pubid="2" name="RST" />
    <publisher pubid="3" name="XYZ" />
</publishers>

文件2,books.xml

<books>
    <book bkid="1" pubid="1" name="introduction to A" />
    <book bkid="2" pubid="3" name="introduction to B" />
    <book bkid="3" pubid="3" name="introduction to C" />
    <book bkid="4" pubid="2" name="introduction to D" />
</books>

題:

  • Java / Android中是否有可用的XML查詢(類似於LINQ)?
  • 在JAVA中 ,我該怎么做? (我想同時從兩個XML文件中查詢)

    SELECT book FROM books.xml JOIN publishers.xml ON publishers.pubid = books.pubid AND bkid = "2"

讓我用“普通”英語進行解釋:),節點<book>是從books.xml中選擇的,其中bkid=2屬性,同時是<publisher>從Publishers.xml文件中選擇的,其中publishers.pubid=books.pubid

期望的輸出(已處理):

Book ID: 2
Book Name: introduction to B
Publisher: XYZ

謝謝!

這很常見嗎? 不,不是,但有時是必需的。 我將按此StackOverflow答案中所述使用Xquery。 當然,如果您可以合並文件,則可以簡化問題。

-編輯-

由於Xquery在Android上似乎沒有非常扎實的支持,因此我會考慮另一個選擇:

  1. 合並文件:您可以將兩個流下拉,將它們合並到新的父節點<root> xml files concat here </root>然后將此字符串轉換為dom文檔並使用xpath對其進行解析。

暫無
暫無

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

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