xml解析Document对象和Element对象

xml解析Document对象

 Document:文档对象。代表内存中的dom树

  获取Element对象

    getElementById(String id):根据id属性值获取唯一的element对象

    getElementsByTag(String tagname):根据标签名称获取元素对象集合

    getElementsByAttribute(String key):根据属性名称获取元素对象集合

    getElementsByAttributeValue(String key,String value):根据对应的属性名和属性值获取元素对象集合

复制代码
public class JsoupDemo03 {
    public static void main(String[] args) throws IOException {
        //获取studen.xml的path
        String path = JsoupDemo03.class.getClassLoader().getResource("student1.xml").getPath();
        //获取Document对象
        Document document = Jsoup.parse(new File(path), "UTF-8");
        //获取元素对象
        //获取所有的student对象
        Elements elements = document.getElementsByTag("student");
        System.out.println(elements);
        System.out.println("------------------");
        //获取属性名为id的元素对象
        Elements id = document.getElementsByAttribute("id");
        System.out.println(id);
        System.out.println("------------------");
        //获取number属性值为aaa_0001的元素
        Elements value = document.getElementsByAttributeValue("number", "aaa_0001");
        System.out.println(value);
        System.out.println("------------------");
        //根据id的属性值获取对象
        Element elementById = document.getElementById("1");
        System.out.println(elementById);
    }
}
复制代码

 

 

 

 

 

 

 

 

xml解析Element对象

Element:元素对象

  1、获取子元素对象

    getElementById(String id):根据id属性值获取唯一的element对象

    getElementsByTag(String tagname):根据标签名称获取元素对象集合

    getElementsByAttribute(String key):根据属性名称获取元素对象集合

    getElementsByAttributeValue(String key,String value):根据对应的属性名和属性值获取元素对象集合

  2、获取属性值

    String attr(String key):根据属性名称获取属性值

  3、获取文本内容

    String text():获取文本内容

    String html():获取标签体的所有内容,包括字标签的字符串内容

 

复制代码
public class JsoupDemo03 {
    public static void main(String[] args) throws IOException {
        //获取studen.xml的path
        String path = JsoupDemo03.class.getClassLoader().getResource("student1.xml").getPath();
        //获取Document对象
        Document document = Jsoup.parse(new File(path), "UTF-8");
        /**
         * ELement对象功能
         * Element:元素对象
         *   1、获取子元素对象
         *     getElementById(String id):根据id属性值获取唯一的element对象
         *     getElementsByTag(String tagname):根据标签名称获取元素对象集合
         *     getElementsByAttribute(String key):根据属性名称获取元素对象集合
         *     getElementsByAttributeValue(String key,String value):根据对应的属性名和属性值获取元素对象集合
         *   2、获取属性值
         *     String attr(String key):根据属性名称获取属性值
         *   3、获取文本内容
         *     String text():获取所有字标签的文本内容
         *     String html():获取标签体的所有内容,包括字标签的标签和文本内容
         */
        //通过Document对象获取name标签,获取所有的name标签,可以获取到两个
        Elements elements = document.getElementsByTag("student");
        System.out.println(elements.size());
        System.out.println("------------------");
        //通过Element对象获取字标签对象
        Element element_student = document.getElementsByTag("student").get(0);
        Elements ele_name = element_student.getElementsByTag("name");
        System.out.println(ele_name);
        //获取对象的属性值
        String number = element_student.attr("number");
        System.out.println(number);
        System.out.println("------------------");
        //获取文本内容
        String text = element_student.text();
        System.out.println(text);
        System.out.println("------------------");
        String html = element_student.html();
        System.out.println(html);
    }
}
复制代码

 

Node:节点对象

  是document和Element

 

posted @   xjw12345  阅读(742)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示