日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

iOS- 网络访问JSON数据类型与XML数据类型的实现思路及它们之间的区别

發布時間:2024/1/8 asp.net 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS- 网络访问JSON数据类型与XML数据类型的实现思路及它们之间的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.JSON (基本上移動開發的主要數據傳輸都是JSON)       
1.1.JSON特點:                                   
a.[] 表示數組

b.{} 表示字典 - 對象模型建立關系c.應用非常多,基本上移動開發的主要數據傳輸都是JSON

  d. 讀取數據時效率高

  e.在做實現讀取數據時,簡單便捷

1.2.實現                                        
        
要使用JSON,從網絡上獲取到數據之后使用:

[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:nil];

  可以將網絡數據反序列化為字典或者數組,具體轉換類型,看JSON最外面的一個括號

2.XML (主要用于上傳一些文件,移動開發時用的不多)     
2.1.JSON特點:                                 
* XML

a. 大,解析費勁

  b. 解析步驟麻煩,效率低下

  c. 直接看XML方便看出數據

2.2.實現                                      XML解析需要// 1) 實例化解析器NSXMLParser *parser = [[NSXMLParser alloc] initWithData:data];// 2) 設置代理parser.delegate = self;// 3)開始解析[parser parse];// 4)調用代理方法===================================================================XML解析的六個代理方法 // 1. 開始解析文檔,在這里做初始化工作/**1. 解析準備工作- (void)parserDidStartDocument:(NSXMLParser *)parser2.3.4 三個步驟會循環執行,一直到所有的節點解析完成2.解析一個節點,即節點中的字典- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName attributes:(NSDictionary *)attributeDict3.負責拼接字符串,查找節點內容,可能會多次- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string4. 節點完成,可以用KVC直接設置對象內容- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName5. 用于收尾工作- (void)parserDidEndDocument:(NSXMLParser *)parser6. 解析出錯,需要把中間數據清除,以免造成不必要的錯誤- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError7.當XML格式如下:<book pages="12" index="1"><item id="1558" title="仙逆" tag="玄幻" source="/upload/file/2013_07_4/2013718101155179.zip" author="耳根" updatetime="2013-6-21 11:06:17" summary="仙逆............." clicks="86945" words="" logo="/upload/pic/2013_06_5/20136211172503.png" jx="False" /></book>可以將所有的屬性設置到一個節點中的屬性節點中,如此只需要第二步即可。

總結

以上是生活随笔為你收集整理的iOS- 网络访问JSON数据类型与XML数据类型的实现思路及它们之间的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。