處理XML按照如下的過程進行
NSData *xmlData = [[NSData alloc] initWithContentsOfFile:xmlFilePath];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithData:xmlData];
以上的代碼是通過XML文件創(chuàng)建NSXMLParser對象,當然也可以直接通過URL創(chuàng)建:
NSURL *xmlUrl = [NSURL URLWithString:@"http://www.w3school.com/xml/note.xml"];
NSXMLParser *xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlUrl];
指定NSXMLParser對象的委托對象,并實現(xiàn)委托協(xié)議
xmlParser.delegate = NSXMLParserDelegate;
解析XML 主要分為SAX和DOM,我主要使用NSXMLParser
這種屬于SAX解析;首先我們需要新建一個XML文件

下面看看解析的代碼:

運行效果截圖:

不知道怎么回事為啥我的中文不能顯示我用的是UTF-8的編碼啊!
下面看看JSON數(shù)據(jù)解析,因為沒有網(wǎng)絡數(shù)據(jù)所以只能自己寫一個JSON數(shù)據(jù)格式啦!新建一個JSON 數(shù)據(jù),JSON數(shù)據(jù)主要有數(shù)組和字典兩種方式來組合:

JSON 數(shù)據(jù)的解析有多種方式還有一些第三方的庫比如:SBJSON 等但是我在使用的NSJSONSerialization解析JSON 數(shù)據(jù),下面看看JSON數(shù)據(jù)的解析代碼和解析結(jié)果:


JSON 數(shù)據(jù)的解析結(jié)果:

JSON 解析中最常見的是序列化和反序列化小編在這里就使用了序列化和反序列化下面小編說一下這個JSON具體的解析過程:
程序首先加載personList.json文件,獲取JSON 數(shù)據(jù),然后調(diào)用NSJSONSerialization類的dataWithJSONObject: options:error:方法將JSON 數(shù)據(jù)反序列化為對象。由于JSON數(shù)據(jù)可知頂層對象是一個數(shù)組,所以我們將其轉(zhuǎn)型為NSArray.每一個數(shù)組成員是一個字典,所以可以通過調(diào)用字典的objectForKey:方法,傳入鍵名即可獲得對應的值。之后,程序有調(diào)用dataWithJSONObject: options:error:方法將對象序列化為JSON 數(shù)據(jù),最后在NSData對象上- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;實例方法,將其寫入到一個JSON的臨時文件中。