XML简介及操作

目录

1.XML简介

2.XML解析-DOM4J


1.XML简介

  • XML(EXtensible Markup Language),可扩展标记语言
  • 特点:
    • XML与操作系统、编程语言的开发平台无关
    • 实现不同系统之间的数据交换
  • 作用:
    • 数据交换
    • 配置应用程序和网站
    • Ajax基石

HTML 与 XML 区别:

  • XML 被设计用来传输和存储数据,其焦点是数据的内容。
  • HTML 被设计用来显示数据,其焦点是数据的外观。

XML标签:

XML文档内容由一系列标签元素组成

<元素名 属性名=“属性值”>元素内容元素名>

  • 属性值用双引号包裹
  • 一个元素可以有多个属性
  • 属性值中不能直接包含<&
  • 不建议使用的字符:‘、>

XML编写注意事项:

  • 所有XML元素都必须有结束标签
  • XML标签对大小写敏感
  • XML必须正确的嵌套
  • 同级标签以缩进对齐
  • 元素名称可以包含字母、数字或其他的字符
  • 元素名称不能以数字或者标点符号开始
  • 元素名称中不能包含空格

示例:

编写XML文档如下:



	
		HUAWEI P20
		HUAWEI P30
		HUAWEI P40

	
	
		iPhone14 ProMax 1TB

	
	
		Redmi K40
	


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 Elist = rootElement.elements();

根据指定子元素名,获取元素下所有子节点

//获取节点名称为books下所有子节点
List 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对象,并设置编码集

OutputFormat outputFormat=OutputFormat.createPrettyPrint();
outputFormat.setEncoding("UTF-8");

写入XML文件

//写入XML文件的位置 以及指定的格式

XMLWriter xmlWriter=new XMLWriter(new FileWriter("cs.xml"),outputFormat);

//开始写入XML文件   写入Document对象

xmlWriter.write(document);

xmlWriter.close();

你可能感兴趣的:(Java核心编程API,xml,java)