Xml解析 SAXParser解析

2021-08-21 02:33:25 字數 1330 閱讀 3500

xml解析方式有兩種:xmlpullparser解析、saxparser解析,本篇介紹sax解析。

sax解析方式和pull方式不同,它不是利用游標一行一行地解析,而是利用訊息處理機制,遇到什麼就處理什麼

比如當我們處理xml資料中遇到乙個開始標籤後sax會告訴你我遇到了乙個開始標籤,這個標籤是***x,等你作出反應後,它會繼續往下,這時它遇到了一段文字,sax告訴你「我遇到了一段文字,是***x」,然後繼續等你作出反應,接著下去就遇到了結束標籤,sax仍然會告訴你「我到了乙個結束標籤是***」。sax就是以這樣的方式將整個xml資料全部處理完。

下面上mainactivity的**:這部分不是重點!

try

} catch (exception e)

接下來是handler裡面實現解析的**,這部分是重點!

public class mydefaulthandler extends defaulthandler 

//遇到開始標籤執行的方法

@override

public void

startelement(string uri, string localname, string qname, attributes attributes) throws saxexception else if (localname.equals("book"))

}//遇到標籤內容字串執行的方法

@override

public void

characters(char ch, int start, int length) throws saxexception else if (localtag.equals("author"))else if (localtag.equals("page"))else if (localtag.equals("price"))

}  //遇到結束標籤執行的方法

@override

public void

endelement(string uri, string localname, string qname) throws saxexception

}//遇到結束文件執行的方法

@override

public void

enddocument() throws saxexception

//返回解析好的集合資料

public listgetbooklist()

}

XML文件和SAXParser解析器

比較簡單的就不記錄了。記一些容易忘的。1 特殊字元如何表示為純文字 這些字元在xml中屬於特殊字元,它代表的不是本身字元的意思。因此特殊字元表示成純文字,就要通過特殊的辦法來表示 方法一 實體引用 方法二 cdata標記 注意,實體引用放入這裡,也會變成純文字 2 注釋規則 3 什麼是dtd或者sc...

ie中jQuery無法解析xml檔案的解決方案

文章分類 web前端 功能描述 使用jquery解析已經定義好內容的xml檔案 1.xml檔案 menu.xml 1system 0mainframe 2company 1mainframe 2.自定義js檔案解析xml檔案 index.js document ready function erro...

ie中jQuery無法解析xml檔案的解決方案

功能描述 使用jquery解析已經定義好內容的xml檔案 1.xml檔案 menu.xml 1system 0mainframe 2company 1mainframe 2.自定義js檔案解析xml檔案 index.js document ready function error function ...