xml新增約束和解析
阿新 • • 發佈:2020-08-28
一、引入jar包
jsoup
二、程式碼
import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.io.File; import java.io.IOException; public class ResolveXML { public static void main(String[] args) throws IOException { /* 一、xml約束 引入dtd約束: 本地:<!DOCTYPE 根標籤名 SYSTEM "dtd檔案位置"> 網路:<!DOCTYPE 根標籤名 PUBLIC "dtd檔名字" "dtd檔案的位置URL"> 引入xsd約束: 1、xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 2、xsi:schemaLocation="http://www.wuxi.com/xml http://www.wuxi.com/xml/xsd/study.xsd" 3、xmlns:wuxi="http://www.wuxi.com/xml" 二、解析xml 1、Jsoup * 方法:Document parse(File,String)//解析本地檔案 * 方法:Document parse(String)//解析字串 * 方法:Document parse(URL,int)//解析遠端檔案 2、Document * 方法:Elements getElementById(String)//根據id獲取元素 * 方法:Elements getElementsByTag(String)//根據標籤獲取元素 * 方法:Elements getElementsByAttribute(String)//根據屬性獲取元素 * 方法:Elements getElementsByAttributeValue(String,String)//根據屬性和值獲取元素 3、Element 1、獲取子元素物件 * 方法:Elements getElementById(String)//根據id獲取元素 * 方法:Elements getElementsByTag(String)//根據標籤獲取元素 * 方法:Elements getElementsByAttribute(String)//根據屬性獲取元素 * 方法:Elements getElementsByAttributeValue(String,String)//根據屬性和值獲取元素 2、獲取屬性值 * 方法:String attr(String) 3、獲取文字內容 * 方法:String text()//獲取文字內容 * 方法:String html()//獲取html內容 4、選擇器 1、selector:Elements select(String)//引數為選擇器 2、XPath:需要匯入額外的jar包(JsoupXpath)、需要檢視XPath語法*/ //獲取檔案路徑 String path = ResolveXML.class.getClassLoader().getResource("study.xml").getPath(); //獲取dom樹 Document document = Jsoup.parse(new File(path), "utf-8"); //獲取dom Elements nameelements = document.getElementsByTag("name"); Element nameelement = nameelements.get(0); String text = nameelement.text(); System.out.println(text); //選擇器 Element select = document.select("#kebi").get(0); System.out.println(select.text()); } }