zoukankan      html  css  js  c++  java
  • Xpath案例

    package cn.itcast.xml.jsoup;
    
    import cn.wanghaomiao.xpath.exception.XpathSyntaxErrorException;
    import cn.wanghaomiao.xpath.model.JXDocument;
    import cn.wanghaomiao.xpath.model.JXNode;
    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.select.Elements;
    
    import java.io.File;
    import java.io.IOException;
    import java.util.List;
    
    /**
     * @author 旗木五五开
     * @create 2020-02-13 23:35
     */
    public class JsoupDemo6 {
        public static void main(String[] args) throws IOException, XpathSyntaxErrorException {
    //        1.获取路径
            String path = cn.itcast.xml.jsoup.JsoupDemo1.class.getClassLoader().getResource("student.xml").getPath();
    //        2.获取Document对象
            Document document = Jsoup.parse(new File(path), "utf-8");
    
    //        3.使用支持 Xpath 语法的对象:JXDocument
    //        根据document对象,创建
            JXDocument jxDocument = new JXDocument(document);
    
    //        4.结合 Xpath 语法查询
    //        查询所有的student标签
            List<JXNode> jxNodes = jxDocument.selN("//student");
            for (JXNode jxNode : jxNodes) {
                System.out.println(jxNode);
            }
            System.out.println("--------------");
    
    //        4.2查询所有student标签下的name标签
            List<JXNode> jxNodes2 = jxDocument.selN("//student/name");
            for (JXNode jxNode2 : jxNodes2) {
                System.out.println(jxNode2);
            }
            System.out.println("--------------");
    
    //        4.3查询student标签下带有id属性的name标签
            List<JXNode> jxNodes3 = jxDocument.selN("//student/name[@id]");
            for (JXNode jxNode3 : jxNodes3) {
                System.out.println(jxNode3);
            }
            System.out.println("--------------");
    
    //        4.4查询student标签下带有id属性的name标签,并且id属性值为1
            List<JXNode> jxNodes4 = jxDocument.selN("//student/name[@id='1']");
            for (JXNode jxNode4 : jxNodes4) {
                System.out.println(jxNode4);
            }
            System.out.println("--------------");
        }
    
    }
  • 相关阅读:
    [TimLinux] CSS 纯CSS实现动画展开/收起功能
    [TimLinux] CSS pre超长自动换行
    j2ee之struts2表单细节处理
    j2ee之struts2的国际化数据方式
    j2ee之struts2拦截器()
    j2ee之struts2文件下载
    j2ee之struts2文件上传
    j2ee国际化数据方式
    j2ee监听器的实现及配置方法
    j2ee过滤器实现的主要代码
  • 原文地址:https://www.cnblogs.com/rijiyuelei/p/12405044.html
Copyright © 2011-2022 走看看