XML:XML的解析 - 簡介
阿新 • • 發佈:2021-07-27
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。