zoukankan      html  css  js  c++  java
  • Day_04_xml解析

    xml解析:操作xml文档,将文档中的数据读取到内存中

    操作xml文档的方式有两种:

      1.解析(读取):将文档中的数据读取到内存中

      2.写入:将内存中的数据保存到xml文档中(后期用的并不多)

    解析xml的方式,思想

      1.DOM 思想:将标记语言文档一次性加载在内存中

    步骤如下:

    1.导包
    2.获取document文档
      如何获取document文档 反射获取path
    3.获取document之后,获取Elements
    4.根据elements提供的方法进行相关的操作

    代码案例如下:  

     package com.dyy.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 jsoup1 {
    public static void main(String[] args) throws IOException {
         
    <--要获取到xml文件,可以使用当前的类对象调用getResource()获取到文档的URL对象然后使用URL对象调用getPath()方法就可以获得xml文档的绝对路径-->
     String path= jsoup1.class.getClassLoader().getResource("zuoye1.xml").getPath();

     <--测试路径存放地方,查验是否获取到正确的数据-->
         System.out.println("path:"+path);
            Document document = Jsoup.parse(new File(path),"utf-8");
    System.out.println("document:"+document);
    Elements elements=document.getAllElements();
    System.out.println("***************************");
    Element element1=document.getElementById("2");
    System.out.println("element1:"+element1);
    System.out.println("****************************");
    Elements elements2=document.getElementsByTag("sex");
    System.out.println("elements2:"+elements2);
    System.out.println("*****************************");
    Elements elements3=document.getElementsByTag("age");
    System.out.println("elements3:"+elements3);
    System.out.println("****************************");
    Elements elements4=document.getElementsByTag("name");
    System.out.println("elements4 tagName:"+elements4);
    System.out.println("*****************************");
    String selement5=elements4.text();
    System.out.println("selement5:"+selement5);
        
    }
    }
  • 相关阅读:
    Ubuntu12.04 安装网卡驱动
    C++类内存分布
    C++多态的实现及原理详细解析
    QT4.7.4在ubuntu10.10下的编译(转)
    FFMpeg处理RTMP流有两种方式
    C++中的单例模式
    C++ STL--stack/queue 的使用方法
    qt编译出现 /usr/bin/ld: cannot find -lQtCore的解决方法
    each()
    window.setTimeout() 和 window.setInterval() 使用说明
  • 原文地址:https://www.cnblogs.com/dyywht/p/13525502.html
Copyright © 2011-2022 走看看