1.數(shù)據(jù)格式(字符串)
ExtraData={"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1"};ExtraData={"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1"};
2.分析數(shù)據(jù)
數(shù)據(jù)類似json數(shù)據(jù)但是其實(shí)不是。我們發(fā)現(xiàn)數(shù)據(jù)還是相對(duì)標(biāo)準(zhǔn)。
(1)我們可以先把字符串中的"ExtraData="代替為空字符串"":theString等于上面的一整串字符串。
NSString*strResult= [theStringstringByReplacingOccurrencesOfString:@"ExtraData="withString:@""];
NSLog(@"strResult....%@",strResult);
strResult輸出結(jié)果為:
{"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1"};{"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1"};
(2)輸出結(jié)果類似于兩個(gè)字典,我們只要用字符串的提取方法把字符串從”;”分割出來組成一個(gè)數(shù)組:(注意:這里組成的數(shù)組的元素并不是字典,只是字符串,而且最后一個(gè)”;”后邊也有一個(gè)空的字符串“”,不能忽略)
NSArray*array = [strResultcomponentsSeparatedByString:@";"];
array的結(jié)果如下:
("{"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1”}","{"type":"1","id":"10030101","title":"我是廣告", "oglink":"http%3A%2F%2Fwww.baidu.com", "link":"http://dol.tianya.cn/c?z=tianya&la=0&si=763&cg=717&c=10030101&ci=231&or=564&l=16320&bg=16320&b=16387&u=http%3A%2F%2Fwww.baidu.com", "pic":"http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg", "logo":"1", "istrack":"1”}","")
(3)數(shù)組的部分?jǐn)?shù)據(jù)(除了最后一個(gè))是json數(shù)據(jù),就可以用json數(shù)據(jù)解析
NSString*jsonString = array[0];
NSData*jsonData = [jsonStringdataUsingEncoding:NSUTF8StringEncoding];
NSError*err;
NSDictionary*dic = [NSJSONSerializationJSONObjectWithData:jsonDataoptions:NSJSONReadingMutableContainerserror:&err];
輸出經(jīng)過json解析的字典dic:
{
id = 10030101;
istrack = 1;
logo = 1;
oglink = "http%3A%2F%2Fwww.baidu.com";
pic = "http://801.tianya.cn/dolphin/tianya/2016/02/0_502.jpg";
title = "\U6211\U662f\U5e7f\U544a";
type = 1;
}