XML解析

XML 文档形成一种树结构

XML解析方式:

DOM:一次性将整个XML数据加载进内存进行解析

优点:

  • 整个文档树在内存中,便于操作;
  • 支持删除、修改、重新排列等多种功能;

缺点:

  • 将整个文档调入内存(包括无用的节点)浪费时间和空间;
  • 效率低,解析速度慢,内存占用量过高

结论:

比较适合解析小文件

SAX:从根元素开始,按顺序一个元素一个元素往下解析

优点:

  • 不用事先调入整个文档,占用资源少 ,内存消耗小

缺点:

  • 只能对XML文件内容进行读取,而不能在文件中进行插入、修改数据等操作;
  • SAX只能从文档开始执行遍历的,并且只能遍历一次。也就是说我们不能随机的访问XML文件,只能从头到尾的将XML文件遍历一次(当然也可以中间截断遍历);
  • 事件过后,若没保存数据,那么数据就丢了;

结论:

比较适合解析大文件

iOS中XML解析方案:

  • 苹果原生
    NSXMLParser:SAX方式解析,使用简单
  • 第三方框架:
    GDataXML:DOM方式解析,由Google开发,基于libxml2 (好用)
    libxml2:纯C语言,默认包含在iOS SDK中,同时支持DOM和SAX解析

写在最后:

欢迎指正!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. XML总结 1.1. XML简介 XML : 可扩展的标记语言。(和HTML非常类似的) 可扩展的。 自定义...
    Ethan_Walker阅读 3,127评论 0 12
  • Java Web开发实战经典 在项目开发中,HTML的主要功能是进行数据展示,而要进行数据存储结构的规范化就需要使...
    年少懵懂丶流年梦阅读 1,678评论 0 9
  • xml解析 xml简介 XML(eXtended Markup Language,可扩展标记性语言),xml可以对...
    无止无尽阅读 1,470评论 0 7
  • 一、绪论 上周工作需要了解项目的一些大体内容,结果在xml解析这一块看的迷迷糊糊的,所以在这里把学习到xm...
    cao健强阅读 4,108评论 1 7
  • 解析的概念 解析:从事先规定好的格式中提取数据。 解析的前提:提前约定好格式,数据提供方按照格式提供数据,数据获取...
    逗逗豆豆笑阅读 1,174评论 2 14