网络——XML基础知识

来源:互联网 发布:java每5个数输出一行 编辑:程序博客网 时间:2024/05/21 06:25

目录:

  1. XML简介
  2. XML语法
  3. XML解析

一、XML简介

什么是XML?全称是Extensible Markup Language,译作“可扩展标记语言”跟JSON一样,也是常用的一种用于交互的数据格式一般也叫XML文档(XML Document)
XML举例<videos>    <video name="小黄人 第01部" length="30" />    <video name="小黄人 第02部" length="19" />    <video name="小黄人 第03部" length="33" /></videos>

二、XML语法

1.一个常见的XML文档一般由以下部分组成

文档声明元素(Element)属性(Attribute)

2.文档声明

在XML文档的最前面,必须编写一个文档声明,用来声明XML文档的类型。最简单的声明<?xml version="1.0" ?>用encoding属性说明文档的字符编码<?xml version="1.0" encoding="UTF-8" ?>

3.元素

一个元素包括了开始标签和结束标签拥有元素内容:<video>小黄人</video>没有元素内容:<video></video>没有元素内容的简写:<video/> 
一个元素可以嵌套若干个子元素(不能出现交叉嵌套)    <videos>        <video>            <name>小黄人 第01部</name>              <length>30</length>        </video>    </videos>
规范的XML文档最多只有1个根元素,其他元素都是根元素的子孙元素

4.元素的注意

XML中的所有空格和换行,都会当做具体内容处理下面两个元素的内容是不一样的第1个<video>小黄人</video>第2个<video>    小黄人</video>

5.属性

一个元素可以拥有多个属性<video name="小黄人 第01部" length="30" />video元素拥有namelength两个属性属性值必须用 双引号"" 或者 单引号'' 括住实际上,属性表示的信息也可以用子元素来表示,比如<video>    <name>小黄人 第01部</name>        <length>30</length></video>

三、XML解析

  1. 要想从XML中提取有用的信息,必须得学会解析XML

    提取name元素里面的内容
    小黄人 第01部

    提取video元素中name和length属性的值

  2. XML的解析方式有2种

    DOM:一次性将整个XML文档加载进内存,比较适合解析小文件
    SAX:从根元素开始,按顺序一个元素一个元素往下解析,比较适合解析大文件

  3. 在iOS中,解析XML的手段有很多

    苹果原生:NSXMLParser:SAX方式解析,使用简单第三方框架:libxml2:纯C语言,默认包含在iOS SDK中,同时支持DOM和SAX方式解析GDataXML:DOM方式解析,由Google开发,基于libxml2XML解析方式的选择建议大文件:NSXMLParser、libxml2小文件:GDataXML
0 0
原创粉丝点击