xml添加约束和解析

一、引入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());
    }
}
原文地址:https://www.cnblogs.com/linding/p/13577095.html