大话XML解析

Posted 朱培

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了大话XML解析相关的知识,希望对你有一定的参考价值。

之前我写过一篇关于xml解析的文章:http://blog.csdn.net/sdksdk0/article/details/50749326。今天这篇文章主要是进一步加深对xml基础的理解了使用,毕竟基础是很重要的嘛!写的应该会更注重细节的内容。主要内容有xml语法、DOM解析、SAX解析、Xpath,schema约束。


一、xml语法

标签

  1. 有开始标签和结束标签
  2. xml标签名称区分大小写
  3. xml标签一定要正确配对
  4. 中间不能使用空格
  5. 不能以数字开头,可以以下划线或字母开头
  6. 在一个xml文档中,有且仅有一个根标签

属性

  1. 属性值一定要以引号包含,也不能单双引号混用 name="erim"
  2. 一个标签内可以多个属性,但是属性名不能重复,例如不能有两个 id="1" id="2"

注释

<!--xml的注释  -->

文档申明

如果在ide中开发,保存xml文件时会自动按照文档申明的encoding来保存。

 <?xml version="1.0" encoding="utf-8"?>

转义字符

<   &lt;
>   &gt;
"   &quot;
&   &amp;
空格 &nbsp;

写法:&lt;p&gt;段落&lt;/p&gt;

CDATA块

作用,可以让一些需要包含特殊字符的内容,统一进行原样输出。

<![CDATA[
        <html><head>head</head><body>body</body></html>
    ]]>

处理指令

作用:告诉xml解析器如何解析xml内容

<?xml-stylesheet type="text/css"  href="1.css" ?>

完整例子:

<?xml version="1.0" encoding="utf-8"?>
 <codes>
	 <code>
		<p>段落</p>
		<p>段落</p>
	</code>
	<code>
	<![CDATA[
		<html><head>head</head><body>body</body></html>
	]]>
	</code>
</codes>


二、xml解析的方式

有DOM解析和SAX解析方式。

Dom解析常用工具有:

  1. JAXP (oracle官方)
  2. JDOM
  3. DOM4J(常用)