2010-11-16 22 views
17

Câu trả lời đơn giản cần thiết cho một câu hỏi đơn giản.Cách đơn giản trong java để đánh giá xpath trên một chuỗi là gì và trả về một chuỗi kết quả

Ví dụ:

String xml = "<car><manufacturer>toyota</manufacturer></car>"; 
String xpath = "/car/manufacturer"; 
assertEquals("toyota",evaluate(xml, xpath)); 

Làm thế nào tôi có thể viết các phương pháp đánh giá theo cách đơn giản và có thể đọc được mà sẽ làm việc cho bất kỳ xml cũng như hình thành nhất định và xpath.

Rõ ràng có vô số cách để đạt được điều này nhưng phần lớn dường như rất dài dòng.

Bất kỳ cách đơn giản nào tôi thiếu/thư viện có thể đạt được điều này?

Đối với trường hợp nhiều nút được trả về, tôi chỉ muốn biểu diễn chuỗi ký tự này.

Trả lời

36

Ở đây bạn đi, sau đây có thể được thực hiện với Java SE:

import java.io.StringReader; 
import javax.xml.xpath.XPath; 
import javax.xml.xpath.XPathFactory; 
import org.xml.sax.InputSource; 

public class Demo { 

    public static void main(String[] args) throws Exception { 
     String xml = "<car><manufacturer>toyota</manufacturer></car>"; 
     String xpath = "/car/manufacturer"; 
     XPath xPath = XPathFactory.newInstance().newXPath(); 
     assertEquals("toyota",xPath.evaluate(xpath, new InputSource(new StringReader(xml)))); 
    } 

} 
Các vấn đề liên quan