上次在 利用 Xpath( Xml Path Language XML查詢語言)來達到搜索功能 這篇文章中,是使用 xerces 這個額外下載的套件,實際上 JDK 也有內建 Xpath 的套件,就目前測試結果,兩者並無特別差異,但說不定在更後期的測試過程中,可能會有較明顯的差異。其程式碼如下:
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathConstants;
import javax.xml.xpath.XPathExpression;
import javax.xml.xpath.XPathExpressionException;
import javax.xml.xpath.XPathFactory;
// 以上都是 JDK 內建的套件
public class html extends JFrame{
XPathFactory factory = XPathFactory.newInstance();
XPath xpath;
public html(){
xpath=factory.newXPath(); //利用 XPathFactory 建立新的 XPath
}
public String[][] parse(String input){ // input 為 Xpath 指令
NodeList nodelist = null;
String data[][] = null;
try {
XPathExpression xpe = xpath.compile(input);
// 處理 Xpath 指令的表達式
nodelist = (NodeList) xpe.evaluate(document, XPathConstants.NODESET);
// 將 Document 載入後,將 Xpath 的搜索結果強制轉換成 NodeList
......
}
}
}
參考資料:
沒有留言:
張貼留言