JSON數(shù)據(jù)中有null導(dǎo)致數(shù)據(jù)加載失敗的解決辦法

問題分析:

使用NSJSONSerialization或者AFN框架的AFHTTPSessionManager(底層也是NSJSONSerialization)將NSData數(shù)據(jù)轉(zhuǎn)化成OC對象彼念,有時(shí)會(huì)出現(xiàn)URL正確勉躺,加載數(shù)據(jù)任然會(huì)報(bào)錯(cuò):

 reason: '-[NSNull length]: unrecognized selector sent to instance

分析原因發(fā)現(xiàn),轉(zhuǎn)化出來的OC對象中含有null.所以糊昙,NSNull沒有l(wèi)ength方法,所以會(huì)報(bào)找不到方法錯(cuò)誤逛拱。


解決辦法:將"null"替換成“ ”邻遏。

  • 1.先將NSData數(shù)據(jù)轉(zhuǎn)化成NSString;
  • 2.再對轉(zhuǎn)化好的NSString進(jìn)行替換;
  • 3.替換好的NSSting再轉(zhuǎn)化成NSData;
  • 4.NSData轉(zhuǎn)化成OC對象

下面提供一個(gè)封裝好的方法汹桦,以后直接使用就好了

//替換數(shù)據(jù)中的空字符串
+ (NSArray*)arrayWithNoNullArray:(NSArray*)originalArray {
    //array -> string
    NSData *data = [NSJSONSerialization dataWithJSONObject:originalArray options:0 error:nil];
    NSString *str =[[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
    //替換
    NSString *nStr = [str stringByReplacingOccurrencesOfString:@"null" withString:@"\"\""];
    //string -> array
    NSData *nData =[nStr dataUsingEncoding:NSUTF8StringEncoding];
    return  [NSJSONSerialization JSONObjectWithData:nData options:0 error:nil];
}

傳入一個(gè)含有null的OC數(shù)組鲁驶,直接返回替換過的新數(shù)組。用不含null的數(shù)組再去加載數(shù)據(jù)舞骆,就不會(huì)有問題了钥弯。


Snip20160726_7.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市督禽,隨后出現(xiàn)的幾起案子脆霎,更是在濱河造成了極大的恐慌,老刑警劉巖狈惫,帶你破解...
    沈念sama閱讀 223,002評論 6 519
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件睛蛛,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)忆肾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,357評論 3 400
  • 文/潘曉璐 我一進(jìn)店門荸频,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人客冈,你說我怎么就攤上這事旭从。” “怎么了场仲?”我有些...
    開封第一講書人閱讀 169,787評論 0 365
  • 文/不壞的土叔 我叫張陵和悦,是天一觀的道長。 經(jīng)常有香客問我渠缕,道長鸽素,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 60,237評論 1 300
  • 正文 為了忘掉前任褐健,我火速辦了婚禮付鹿,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘蚜迅。我一直安慰自己舵匾,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,237評論 6 398
  • 文/花漫 我一把揭開白布谁不。 她就那樣靜靜地躺著坐梯,像睡著了一般。 火紅的嫁衣襯著肌膚如雪刹帕。 梳的紋絲不亂的頭發(fā)上吵血,一...
    開封第一講書人閱讀 52,821評論 1 314
  • 那天,我揣著相機(jī)與錄音偷溺,去河邊找鬼蹋辅。 笑死砸王,一個(gè)胖子當(dāng)著我的面吹牛粹舵,可吹牛的內(nèi)容都是我干的西土。 我是一名探鬼主播艺演,決...
    沈念sama閱讀 41,236評論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼蟹略!你這毒婦竟也來了蛾默?” 一聲冷哼從身側(cè)響起粪躬,我...
    開封第一講書人閱讀 40,196評論 0 277
  • 序言:老撾萬榮一對情侶失蹤袄友,失蹤者是張志新(化名)和其女友劉穎殿托,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體剧蚣,經(jīng)...
    沈念sama閱讀 46,716評論 1 320
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡支竹,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,794評論 3 343
  • 正文 我和宋清朗相戀三年旋廷,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片唾戚。...
    茶點(diǎn)故事閱讀 40,928評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡柳洋,死狀恐怖待诅,靈堂內(nèi)的尸體忽然破棺而出叹坦,到底是詐尸還是另有隱情,我是刑警寧澤卑雁,帶...
    沈念sama閱讀 36,583評論 5 351
  • 正文 年R本政府宣布募书,位于F島的核電站,受9級特大地震影響测蹲,放射性物質(zhì)發(fā)生泄漏莹捡。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,264評論 3 336
  • 文/蒙蒙 一扣甲、第九天 我趴在偏房一處隱蔽的房頂上張望篮赢。 院中可真熱鬧,春花似錦琉挖、人聲如沸启泣。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,755評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寥茫。三九已至,卻和暖如春矾麻,著一層夾襖步出監(jiān)牢的瞬間纱耻,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,869評論 1 274
  • 我被黑心中介騙來泰國打工险耀, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留弄喘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,378評論 3 379
  • 正文 我出身青樓甩牺,卻偏偏與公主長得像蘑志,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子柴灯,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,937評論 2 361

推薦閱讀更多精彩內(nèi)容