Read Sean

          Read me, read Sean.
          posts - 508, comments - 655, trackbacks - 9, articles - 4

          [XML學習筆記][2.2]XML內容提取

          Posted on 2005-02-19 22:00 laogao 閱讀(607) 評論(0)  編輯  收藏 所屬分類: On Java

           

          為了讓XML文檔能夠被應用程序識別和處理,必須提供一個讀取XML文檔的途徑。當然,你也許會說,XML不就是文本文件嗎?我用java.io包不就可以讀取了?XML文件并非簡單的plain text,它有自己的結構和描述性,我們需要在基本的I/O之上更進一步。常見的XML讀取有兩種不同的方式:SAX和DOM,下面我們分別來看一下:

          SAX是Simple API for XML的縮寫,顧名思義,就是處理XML的簡單API,就象它的名字所暗示的那樣,SAX比DOM要簡單直接得多。本質上講,SAX是事件驅動的,比如,當讀取XML文件到一個標簽的結尾時,該事件被傳遞到應用程序,應用程序做出相應處理,于是,應用程序在這個時候只知道已經讀取的那一部分內容,而對剩下的XML數據一無所知。這正是SAX的局限,同時,因為SAX是讀一部分處理一部分,它的速度相當快。

          DOM是Document Object Model的縮寫,文檔對象模型,這個名字聽上去就要更抽象一些,它是一次性把整個XML文檔讀取完畢然后構件一個完整的樹狀對象模型,于是它的速度要比SAX慢很多,但是對XML文檔整體就有一個更加完整的視圖,這在有些時候是必需的。

          通常我們使用的XML API都同時支持這兩種模式,在遇到具體問題時,我們可以根據文檔的復雜度、規模、以及我們的需求來確定到底使用哪一種模式。

           

          主站蜘蛛池模板: 宝清县| 信丰县| 邵东县| 酉阳| 花莲市| 资兴市| 明星| 高淳县| 固始县| 江达县| 崇文区| 出国| 宁化县| 宁国市| 抚宁县| 门头沟区| 托里县| 景宁| 东乌| 桂阳县| 土默特右旗| 江达县| 泉州市| 清河县| 祁阳县| 南宫市| 秭归县| 正蓝旗| 聂荣县| 宁海县| 佛教| 武陟县| 正镶白旗| 郧西县| 香格里拉县| 荔浦县| 渝北区| 六枝特区| 德清县| 盱眙县| 洪泽县|