1. 程式人生 > 其它 >XML:XML的解析 - 簡介

XML:XML的解析 - 簡介

1 解析概述

  當將資料儲存在XML後,我們就希望通過程式獲得XML的內容。

  如果我們使用Java基礎所學習的IO知識是可以完成的,不過你需要非常繁瑣的操作才可以完成,且開發中會遇到不同問題(只讀、讀寫)。

  人們為不同問題提供不同的解析方式,並提交對應的解析器,方便開發人員操作XML。

2 XML解析方式

  開發中比較常見的解析方式有兩種,如下

    1. DOM:要求解析器把整個XML文件裝載到記憶體,並解析成一個Document物件

          優點:元素與元素之間保留結構關係,故可以進行增刪改查操作

          缺點:XML文件過大,可能出現記憶體溢位顯現

    2.SAX:是一種速度更快,更有效的方法。

        它逐行掃描文件,一邊掃描一邊解析。

        並以事件驅動的方式進行具體解析,每執行一行,都將觸發對應的事件。(瞭解)

          優點:佔用記憶體少,處理速度快,可以處理大檔案

          缺點:只能讀,逐行後將釋放資源

   

3 XML常見的解析器

解析器:就是根據不同的解析方式提供的具體實現。有的解析器操作過於繁瑣,為了方便開發人員, 有提供易於操作的解析開發包

    JAXP:sun公司提供的解析器,支援DOM和SAX兩種思想

    DOM4J:一款非常優秀的解析器 , Dom4j是一個易用的、開源的庫,用於XML,XPath和XSLT。 它應用於Java平臺,採用了Java集合框架並完全支援DOM,SAX和JAXP。

    Jsoup:jsoup 是一款Java 的HTML解析器 ,也可以解析XML

    PULL:Android內建的XML解析方式,類似SAX。