1:xml语言:
2:DOM解析:1) xml和html的区别:
html是一种不严谨的语言,标签可以不匹配,可以不区分大小写;
xml是一种严谨的语言,标签必须匹配,区分大小写;xml语言就是弥补html语言的不足;
2) sml的语言规范:
xml:标签区分大小写,前后标签必须一致;标签可以是空标签;标签中不能有空格,可以有下划线;
标签不能以数字开头,但是可以以下划线开头;标签的中间不能有冒号,在xml文件中冒号是用在xml的约束中;
在xml中有且仅有一个根标签;
3) xml属性:
xml标签的属性可以有很多,属性和属性值之前用"=" 连接, 属性值可以用' ' 或者" " 括起来,但是不能同时使用.
4) CDATE块:
CDATE块相当于<pre>标签
<![CDATE[ xxx ]]> 原样输出xxx;
5) 处理指令:
<?xml-stylesheet type="text/css" href="1.css" ?>
这个格式必须写在xml文档声明的后面.
1) dom4j:
使用dom4j来进行解析xml文件,首先是读取xml文件:Document doc =new SAXReader().read("xml文件的路径");
Document对象就是文档对象,获取文档的根标签: Element root = doc.getRootElement();
2) 获取标签对象的属性和内容
通过根标签来获取子标签: Element e = root.element("标签名称");该返回的是第一个标签;
root.elements("标签名称"); 返回的是list集合;
Attribute attr = e.attribute("属性名称") ;获取的是一个属性对象
e.elementText("标签对象"); 获取到的是子标签的值
3) 修改xml文件
通过new XMLWriter(out,format).write(doc); 将内存中doc文件输出到硬盘上,
OutputFormat format = OutputFormat.creatPettryPrint(); 设置一个输出格式
format.setencoding("utf-8");
4) 给文档中添加标签
添加一个标签: root.addElement("标签名称").setText("标签内容");
设置属性: root.addAttribute("属性名称","属性内容");
5) 删除标签
删除标签有两种方式: 第一个是自杀方式: e.detach();
第二个是他杀方式: e.getParent().remove(e); 调用父类来进行删除