iOS開發 網路 兩種常用的方法解析XML資料

2021-07-03 06:45:44 字數 2081 閱讀 4705

解析xml資料常用的有兩種方法

使用google的gdataxmlnode解析xml資料

使用的是dom方式解析

先把xml一口吞掉 然後一點一點的解析

使用蘋果自帶的nsxmlparser解析xml資料

使用的是sax方式解析

乙個標記乙個標記的解析

首先把gdataxml資料夾放入專案中

更改bulid setting裡面的東西

更改標頭檔案搜尋路徑

在header search paths裡面新增路徑/usr/include/libxml2

在other linker flags裡面新增-lxml2

把gdataxmlnode.m檔案改為非arc環境

//載入整個文件

gdataxmldocument *doc = [[gdataxmldocument alloc] initwithdata:data options:0 error:nil];

//拿到跟元素

gdataxmlelement *rootelement = doc.rootelement

;//拿到所有的video元素

nsarray *elements= [rootelement elementsforname:@"video"];

//遍歷陣列

for (gdataxmlelement *elem in elements)

這個方法是蘋果提供的,需要設定**方法

每當碰見乙個標記的話就會呼叫**方法

//建立解析器

nsxmlparser *parser = [[nsxmlparser alloc] initwithdata:data];

//設定解析器的**

parser.delegate = self;

//開始解析

[parser parse];//這是乙個同步操作

**方法

/**

* 解析到文件的開頭時會呼叫

*/- (void)parserdidstartdocument:(nsxmlparser *)parser

/** * 解析到乙個元素的開始就會呼叫

* * @param elementname 元素名稱

* @param attributedict 屬性字典

*/- (void)parser:(nsxmlparser *)parser didstartelement:(nsstring *)elementname namespaceuri:(nsstring *)namespaceuri qualifiedname:(nsstring *)qname attributes:(nsdictionary *)attributedict

/** * 解析到乙個元素的結束就會呼叫

* * @param elementname 元素名稱

*/- (void)parser:(nsxmlparser *)parser didendelement:(nsstring *)elementname namespaceuri:(nsstring *)namespaceuri qualifiedname:(nsstring *)qname

/** * 解析到文件的結尾時會呼叫(解析結束)

*/- (void)parserdidenddocument:(nsxmlparser *)parser

vue props的兩種常用方法

1 實現父 子的通訊 舉例如下 父元件 parent.vue 子元件 children.vue export default methods 父元件object1的值放在channel變數,然後傳入給子元件。這樣可以達到父子之間的通訊 2 校驗變數 還可以通過元件傳入的值判斷是否符合要求,如果不符合...

vue props的兩種常用方法

1 實現父 子的通訊 舉例如下 父元件 parent.vue 子元件 children.vue export default methods 父元件object1的值放在channel變數,然後傳入給子元件。這樣可以達到父子之間的通訊 2 校驗變數 還可以通過元件傳入的值判斷是否符合要求,如果不符合...

IOS 兩種網路請求的最佳實踐

在使用url 載入系統時,主要的兩種方法可以執行http請求和接收響應 一 同步請求的最佳實踐 二 非同步請求的最佳實踐 在需要認證的情況下請使用非同步請求 如果需要向使用者提供進度反饋,那麼請使用非同步請求 在後台執行緒上使用非同步請求時要小心,請提供乙個執行迴圈 對於可以在後台執行緒的請求佇列中...