zoukankan      html  css  js  c++  java
  • java_dom4j解析xml

    package forRQ;

    import java.io.File;
    import java.net.MalformedURLException;
    import java.util.Iterator;
    import java.util.List;

    import org.dom4j.Attribute;
    import org.dom4j.Document;
    import org.dom4j.DocumentException;
    import org.dom4j.Element;
    import org.dom4j.io.SAXReader;

    public class Main {
    public Document read(String fileName) throws Exception {
    SAXReader reader = new SAXReader();
    Document document = reader.read(new File(fileName));
    return document;
    }

    public static void main(String args[]) throws Exception {

    String str = "rqxml/table.xml";
    Main main = new Main();
    Document doc = main.read(str);
    Element root = doc.getRootElement();
    List<?> tables = root.elements("table");// 根据根节点,将根节点下
    for (Object table : tables) {//
    Element etable = (Element) table;
    System.out.println(etable.getName()+"-----");// 获取节点下的数据。
    List<?> fields = etable.elements("field");// 获取节点下所有的内容,存入容器中
    List<?> attrs = etable.attributes();
    for (Object attr : attrs) {
    Attribute cattr = (Attribute) attr;
    System.out.println(cattr.getName() + ": "+ cattr.getText());// 获取节点下的数据。
    }
    for (Object field : fields) {
    Element efield = (Element) field;
    List<?> fattrs = efield.attributes();
    System.out.println(efield.getName() + ": >>>>>");// 获取节点下的数据。
    for (Object attr : fattrs) {
    Attribute cattr = (Attribute) attr;
    System.out.println(cattr.getName() + ": "+ cattr.getText());// 获取节点下的数据。
    }
    }
    }
    }
    }

  • 相关阅读:
    拖拽更改窗口大小
    一个窗口移动时,另一个窗口跟随移动
    xcode使用技巧
    同一个解决方案中,多个项目间相互引用,无法打开源文件
    截图时窗口自动识别
    C++使用sqlite时,中文字符显示乱码问题
    sqlite3配置与使用
    duilib控件与属性说明
    xml文件编写
    线程及安全相关
  • 原文地址:https://www.cnblogs.com/qinche/p/3936996.html
Copyright © 2011-2022 走看看