龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > Javascript编程 >

对比分析json及XML(3)

时间:2014-12-03 03:00来源:网络整理 作者:网络 点击:
分享到:
复制代码 代码如下: !-- This is a comment -- 在 XML 中,空格会被保留 HTML 会把多个连续的空格字符裁减(合并)为一个: 复制代码 代码如下: HTML: Hello my name

复制代码 代码如下:

<!-- This is a comment -->

  在 XML 中,空格会被保留 HTML 会把多个连续的空格字符裁减(合并)为一个:

复制代码 代码如下:

HTML:   Hello           my name is David.

  输出: Hello my name is David. 在 XML 中,文档中的空格不会被删节。

  1.2.8 以 LF 存储换行

  在 Windows 应用程序中,换行通常以一对字符来存储:回车符 (CR) 和换行符 (LF)。这对字符与打字机设置新行的动作有相似之处。在 Unix 应用程序中,新行以 LF 字符存储。而 Macintosh 应用程序使用CR来存储新行。

 1.3 XML CDATA

  所有XML文档中的文本均会被解析器解析。

  只有CDATA区段(CDATA section)中的文本会被解析器忽略。

  1.3.1 PCDATA

  PCDATA指的是被解析的字符数据(Parsed Character Data)。

  XML解析器通常会解析XML文档中所有的文本。 当某个XML元素被解析时,其标签之间的文本也会被解析:

复制代码 代码如下:

<message>此文本也会被解析</message>

  解析器之所以这么做是因为 XML 元素可包含其他元素,就像这个例子中,其中的元素包含着另外的两个元素(first和last):

复制代码 代码如下:

<name><first>Bill</first><last>Gates</last></name>

  而解析器会把它分解为像这样的子元素:

复制代码 代码如下:

<name>
   <first>Bill</first>
   <last>Gates</last>
</name>

  1.3.2 转义字符

  非法的XML字符必须被替换为实体引用(entity reference)。

  假如您在XML文档中放置了一个类似 “<” 字符,那么这个文档会产生一个错误,这是因为解析器会把它解释为新元素的开始。因此你不能这样写:

复制代码 代码如下:

<message>if salary < 1000 then</message>

  为了避免此类错误,需要把字符 “<” 替换为实体引用,就像这样:

复制代码 代码如下:

<message>if salary < 1000 then</message>

  在 XML 中有 5 个预定义的实体引用:

复制代码 代码如下:

<    <   小于
>    >   大于
&   &   和号
'  '   省略号
"  "   引号

  注释:严格地讲,在XML中仅有字符”<“和”&“是非法的。省略号、引号和大于号是合法的,但是把它们替换为实体引用是个好的习惯。

  1.3.3 CDATA

  术语CDATA指的是不应由XML解析器进行解析的文本数据(Unparsed Character Data)。

  在 XML 元素中,”<“ 和 ”&“ 是非法的。

  “<” 会产生错误,因为解析器会把该字符解释为新元素的开始。 “&” 也会产生错误,因为解析器会把该字符解释为字符实体的开始。

精彩图集

赞助商链接