XPATH เป็นภาษา XML PATH ซึ่งเป็นภาษาที่ใช้ในการกำหนดส่วนหนึ่งของเอกสาร XML XPath ขึ้นอยู่กับโครงสร้างต้นไม้ที่มีลักษณะคล้าย XML ซึ่งให้ความสามารถในการค้นหาโหนดในโครงสร้างโครงสร้างข้อมูล ในตอนแรกความตั้งใจดั้งเดิมของ XPath คือการใช้เป็นแบบจำลองไวยากรณ์ทั่วไประหว่าง XPOINTER และ XSL แต่ XPath ถูกนำมาใช้อย่างรวดเร็วโดยนักพัฒนาเป็นภาษาสืบค้นขนาดเล็ก
xpathtest.java
การคัดลอกรหัสมีดังนี้:
แพ็คเกจ com.hongyuan.test;
นำเข้า Java.io.File;
นำเข้า java.io.ioException;
นำเข้า javax.xml.parsers.documentBuilder;
นำเข้า Javax.xml.parsers.documentBuilderFactory;
นำเข้า javax.xml.parsers.parserconfigurationException;
นำเข้า javax.xml.xpath.xpath;
นำเข้า javax.xml.xpath.xpathconstants;
นำเข้า Javax.xml.xpath.xpathExpressionException;
นำเข้า javax.xml.xpath.xpathfactory;
นำเข้า org.w3c.dom.document;
นำเข้า org.w3c.dom.node;
นำเข้า org.w3c.dom.nodelist;
นำเข้า org.xml.sax.saxexception;
คลาสสาธารณะ XPathTest {
โมฆะคงที่สาธารณะหลัก (สตริง [] args) พ่น parserconfigurationException
Saxexception, Ioexception, XPathExpressionException {
// แยกวิเคราะห์ไฟล์และสร้างวัตถุเอกสาร
DocumentBuilder Builder = DocumentBuilderFactory.NewInstance ()
.NewDocumentBuilder ();
เอกสารเอกสาร = builder.parse (ไฟล์ใหม่ ("bookstore.xml"));
// สร้างวัตถุ XPATH
XPath XPath = XPathFactory.NewInstance (). newxPath ();
// รับค่าโหนด
สตริง webtitle = (สตริง) xpath.evaluate (
"/bookstore/book [@category = 'web']/title/text ()", เอกสาร,
XPathConstants.string);
System.out.println (webtitle);
System.out.println ("================================================ =================== =================================== ====================================================== ==================================================
// รับค่าแอตทริบิวต์โหนด
สตริง webtitlelang = (สตริง) xpath.evaluate (
"/bookstore/book [@category = 'web']/title/@lang", เอกสาร,
XPathConstants.string);
System.out.println (Webtitlelang);
System.out.println ("================================================ =================== =================================== ====================================================== ==================================================
// รับวัตถุโหนด
Node Bookweb = (Node) XPath.evaluate (
"/bookstore/book [@category = 'web']", เอกสาร,,
XPathConstants.node);
System.out.println (bookweb.getNodename ());
System.out.println ("================================================ =================== =================================== ====================================================== ==================================================
// รับคอลเลกชันโหนด
NodeList Books = (Nodelist) XPath.evaluate ("/Bookstore/Book", เอกสาร, เอกสาร,
XPathConstants.nodeset);
สำหรับ (int i = 0; i <books.getLength (); i ++) {
Node Book = books.item (i);
System.out.println (xpath.evaluate ("@category", หนังสือ,
XPathConstants.string));
-
System.out.println ("================================================ =================== =================================== ====================================================== ==================================================
-
-
Bookstore.xml
การคัดลอกรหัสมีดังนี้:
<? xml version = "1.0" encoding = "utf-8"?>?
<bookstore>
<book category = "Cooking">
<title lang = "en"> ทุกวันอิตาลี </title>
<ผู้แต่ง> Giada de Laurentiis </uthor>
<ปี> 2548 </ ปี>
<ราคา> 30.00 </ราคา>
</book>
<book category = "children">
<title lang = "en"> Harry Potter </title>
<ผู้แต่ง> J K. Rowling </uthor>
<ปี> 2548 </ ปี>
<ราคา> 29.99 </ราคา>
</book>
<book category = "web">
<title lang = "en"> การเรียนรู้ xml </title>
<ผู้แต่ง> Erik T. Ray </uthor>
<earal> 2003 </ ปี>
<ราคา> 39.95 </ราคา>
</book>
</ร้านหนังสือ>
เอฟเฟกต์การทำงาน