你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> 處理JSON數據由於null招致數據加載掉敗的辦法

處理JSON數據由於null招致數據加載掉敗的辦法

編輯:IOS開發綜合

1、起首剖析成績:

應用NSJSONSerialization或許AFN框架的AFHTTPSessionManager(底層也是NSJSONSerialization)將NSData數據轉化成OC對象,有時會湧現URL准確,加載數據任然會報錯:

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

剖析緣由發明,轉化出來的OC對象中含有null.所以,NSNull沒有length辦法,所以會報找不到辦法毛病。

2、處理方法:將"null"調換成“ ”。

     1.先將NSData數據轉化成NSString;

     2.再對轉化好的NSString停止調換;

     3.調換好的NSSting再轉化成NSData;

     4.NSData轉化成OC對象

上面供給一個封裝好的辦法,今後直接應用就行了

//調換數據中的空字符串
+ (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];
}

傳入一個含有null的OC數組,直接前往調換過的新數組。用不含null的數組再去加載數據,就不會有成績了。

好了,以上就是處理JSON數據由於null招致數據加載掉敗的辦法,願望對有須要的同伙們有所贊助,假如有疑問襲擊可以留言交換。

【處理JSON數據由於null招致數據加載掉敗的辦法】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved