XML可扩展语言

可扩展标记语言
特性:
XML具有平台无关性,是一门独立的标记语言
可以在任意平台和语言编辑器打开都会乱码,不需要任何数据来描述就行
XML具有自我描述性
软件与软件之间交流的方式
都是字符串,不一定是文件
为什么学习XML
1. 网络数据传输
2. 数据存储
3. 配置文件
语法格式:

  1. XML文档声明
<?xml version=”1.0” encoding=”UTF-8”?>
  1. 标记
    XML是由一个个标记组成
    语法:
    开始标记(开放标记):<标记名称>
    结束标记(闭合标记):</标记名称>
    大小写必须一样
  2. 一个XML,必须有且仅有一个根标记
    4. 标记可以嵌套但是不能交叉
    5. 标记名称允许重复
    6. 标记除了开始和结束,还有属性
    例如:
  3. 注释不能嵌套注释
    XML读取代码

Java中的xml解析有4种
sax解析也就是一行一行解析,第一行解析完,就会把资源释放,并且只读
DOM解析先把xml文档先加载到内存中,然后在解析
JDOM解析
实现了很多工具类,使用的是具体类,优化了DOM的API
使用了JAVA集合类
DOM4J解析
引入jar文件
创建一个指向XML文件的输入流
创建一个XML读取工具对象
使用读取工具,读取xml文档的输入流,并且得到文档对象
通过文档对象,获取xml文档中的根元素对象

元素对象Element
指的是XML文档中的单个节点.
常用方法:

  1. 获取节点名称 String getName();

  2. 获取节点内容 String getText();

  3. 设置节点内容 String setText();

  4. 根据子节点的名称 , 获取匹配名称的第一个子节点对象. Element element(String 子节点名称); 5. 获取所有的子节点对象 List elements();

  5. 获取节点的属性值 String attributeValue(String 属性名称);

  6. 获取子节点的内容 String elementText(String 子节点名称);

  7. 添加子节点 Element addElement(String 子节点名称);

  8. 添加属性 void addAttribute(String 属性名,String 属性值);
    public class Dome01 {
    public static void main(String[] args) throws IOException, DocumentException {
    FileInputStream fis = new FileInputStream(“d://Demo1.xml”);
    SAXReader sr = new SAXReader();
    Document doc = sr.read(fis);
    Element root = doc.getRootElement();
    System.out.println(root.getName());

     List<Element> es = root.elements();
     for(int i=0;i<es.size();i++){
         Element book = es.get(i);
         System.out.println(book.attributeValue("id"));
         System.out.println(book.elementText("name"));
         System.out.println(book.elementText("info"));
         System.out.println("-----------------------------");
     }
    
     fis.close();
    

    }
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

简遇

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值