student.xml
<?xml version="1.0" encoding="UTF-8" ?> <students> <student number="heima_0001"> <name id="itcast"> <xing>张</xing> <ming>三</ming> </name> <age>100</age> <sex>female</sex> </student> <student number="heima_0002"> <name>lisi</name> <age id="sili">45</age> <sex>female</sex> </student> </students> /** * Element对象功能 1. 获取子元素对象 * getElementById(String id):根据id属性值获取唯一的element对象 * getElementsByTag(String tagName):根据标签名称,获取元素对象集合 * getElementsByAttribute(String key):根据属性名称获取元素对象集合 * getElementsByAttributeValue(String key, String value):根据对应的属性名和属性值获取元素集合 2. 获取属性值(属性名不区分大小写) * attr(String key):根据属性名称获取属性值 3. 获取文本内容 * String text():获取文本内容 * String html():获取标签体的所有内容(包括子标签的字符串内容) */ public class JsoupDemo5_Element { public static void main(String[] args) throws IOException { //2、获取Document对象,根据xml文档来获取 //2.1获取student.xml的path String path = JsoupDemo5_Element.class.getClassLoader().getResource("student.xml").getPath(); //2.2解析xml文档,加载文档进内存,获取Document Document document = Jsoup.parse(new File(path), "utf-8"); //1.1通过Document对象获取name标签,获取所有的name标签,可以获取到两个 Elements elements = document.getElementsByTag("name"); System.out.println(elements.size()); System.out.println("---------------------"); //1.2通过element对象获取字标签对象 Element element_student = document.getElementsByTag("student").get(0); Elements ele_name = element_student.getElementsByTag("name"); System.out.println(ele_name.size()); System.out.println("---------------------"); //2、获取student对象的属性值 String number = element_student.attr("NUMBER"); System.out.println(number); System.out.println("---------------------"); //3、获取文本内容 //获取所有字标签的纯文本内容 String text = ele_name.text(); //获取标签体的所有内容(包括子标签的标签和文本) String html = ele_name.html(); System.out.println(text); System.out.println(html); System.out.println("---------------------"); } }