[英]Search XML files with xalan in Java
我需要編寫一個java應用程序,在標記內執行關鍵字搜索,並從許多xml文件中執行實際數據。 從我在網上的研究中我感覺我必須使用xalan,但我無法弄清楚如何使用它或它做什么。 有人能指出我正確的方向嗎? 謝謝
Xalan是一個XSLT處理器:它使您能夠編寫一個XSL樣式表,將源XML文檔轉換為其他內容。
當然可以寫一個XSL轉換,然后搜索轉換的結果。
另一個選擇是使用XML解析器解析文檔,然后使用Lucene :請參閱使用Digester和Lucene解析,索引和搜索XML文檔 。
您可能還想使用XPath 。 這一切都取決於你想要達到的目標。
我聽起來你正在尋找Java的XPath實現。 這允許您構造搜索表達式並將其應用於一個或多個XML文檔(通常必須已經解析)。 Xalan是一種選擇,但還有其他選擇。 從Java 5開始的Java版本包括XML解析和XPath功能。 如果您使用的是最新版本的Java,並希望簡單地解析和搜索一組XML文檔,那么除了Java SDK之外,您可能不需要任何其他內容。
有關“開箱即用”的XPath功能的良好(但有點過時)概述,請參閱此文章: http : //www.ibm.com/developerworks/library/x-javaxpathapi.html
請參閱此SO帖子 ,了解如何使用contains()
XPath函數進行搜索。
至於如何進行XPath查詢的示例,我建議查看Java XPath文檔 。 這是他們提供的示例代碼:
XPath xpath = XPathFactory.newInstance().newXPath();
String expression = "/widgets/widget";
InputSource inputSource = new InputSource("widgets.xml");
NodeSet nodes = (NodeSet) xpath.evaluate(expression, inputSource, XPathConstants.NODESET);
這將加載文件widgets.xml
並返回與表達式匹配的所有節點的NodeSet
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.