目录
1.XML简介
2.XML解析-DOM4J
1.XML简介
- XML(EXtensible Markup Language),可扩展标记语言
-
特点:
- XML与操作系统、编程语言的开发平台无关
- 实现不同系统之间的数据交换
-
作用:
- 数据交换
- 配置应用程序和网站
- Ajax基石
HTML 与 XML 区别:
- XML 被设计用来传输和存储数据,其焦点是数据的内容。
- HTML 被设计用来显示数据,其焦点是数据的外观。
XML标签:
<元素名 属性名=“属性值”>元素内容</元素名>
- 属性值用双引号包裹
- 一个元素可以有多个属性
- 属性值中不能直接包含<、“、&
- 不建议使用的字符:‘、>
XML编写注意事项:
- 所有XML元素都必须有结束标签
- XML标签对大小写敏感
- XML必须正确的嵌套
- 同级标签以缩进对齐
- 元素名称可以包含字母、数字或其他的字符
- 元素名称不能以数字或者标点符号开始
- 元素名称中不能包含空格
示例:
编写XML文档如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<PhoneInfo>
<Brand id="0" name="华为">
<Type>HUAWEI P20</Type>
<Type1>HUAWEI P30</Type1>
<Type2>HUAWEI P40</Type2>
</Brand>
<Brand id="1" name="苹果">
<Type>iPhone14 ProMax 1TB</Type>
</Brand>
<Brand id="2" name="xiaomi">
<Type>Redmi K40</Type>
</Brand>
</PhoneInfo>
2.XML解析-DOM4J
XML解析:获取元素里面的字符数据或属性数据。
Dom4j:
非常优秀的Java XML API,性能优异,功能强大,开放源代码
Dom4j的基本用法
使用核心类SaxReader加载xml文档获得Document,通过Document对象获得文档的根元素,就可以针对性的进行解析操作了。
操作 | 解析 |
SAXReader() | 读取xml文件 |
getRootElement() | 获取xml根节点 |
elements() | 获取当前节点下的所有子节点 |
elements(“xxx”) | 获取指定元素下的所有子节点 |
element(“xxx”) | 获取指定元素下的子元素对象 |
setText() | 设置元素文本内容 |
getText() | 获取当前节点文本内容 |
elementText(“xxx”) | 根据指定子元素名,获取元素中的文本 |
attributeValue(“属性名”) |
获取当前节点属性 |
对象.addElement("节点名") | 创建节点 Element |
对象.addAttribute("节点属性名","属性值") | 节点添加,修改属性 |
DocumentHelper.creatDocument() | 创建 Document 对象 |
OutputFormat.createPrettyPrint() | 设置XML编码 |
XMLWriter xmlWriter=new XMLWriter(new FileWriter("cs.xml"),outputFormat) | 写入xml文件 |
读取xml文件 SAXReader()
//将xml文件加载到内存中 XML解析器
SAXReader saxReader = new SAXReader();
//document 加载执行xml文档获取Document对象
Document document = saxReader.read(XML路径);
获取XML根节点getRootElement()
Element rootElement = document.getRootElement();
获取当前节点下所有子节点 elements()
//获取根节点下所有子节点 List<Element> Elist = rootElement.elements();
根据指定子元素名,获取元素下所有子节点
//获取节点名称为books下所有子节点List<Element> Elist = rootElement.elements(“books”);
根据指定子元素名,获取子元素对象,如果重复,则获取第一个
//获取节点名称为books下单个子几点Element element= rootElement.element(“books”);
设置元素文本内容 setText()
newelement.setText("内容");
获取当前节点文本内容 getText()
elenent.getText()
根据指定子元素名,获取元素中的文本
elenent.elementText(“book”)
获取当前节点属性 attributeValue(“属性名”)
elenent.attributeValue("name")
创建节点Element对象.addElement("节点名")
Element newelement = rootElement.addElement("span");
节点添加,修改属性Element对象.addAttribute("节点属性名",“属性值”)
newelement.addAttribute("type","属性值");
新XML添加Documen对象
通过DocumentHelper.creatDocument()创建一个Document对象
Document read = DocumentHelper.createDocument();
设置XML编码
通过OutputFormat的静态方法createPrettyPrint()创建OutputFormat对象,并设置编码集文章来源:https://www.toymoban.com/news/detail-569701.html
OutputFormat outputFormat=OutputFormat.createPrettyPrint();
outputFormat.setEncoding("UTF-8");
写入XML文件文章来源地址https://www.toymoban.com/news/detail-569701.html
//写入XML文件的位置 以及指定的格式
XMLWriter xmlWriter=new XMLWriter(new FileWriter("cs.xml"),outputFormat);
//开始写入XML文件 写入Document对象
xmlWriter.write(document);
xmlWriter.close();
到了这里,关于XML简介及操作的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!