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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

iOS 后台返回json解析出现的null的解决办法

發布時間:2024/4/15 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 iOS 后台返回json解析出现的null的解决办法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在后臺返回值為Null為空時,我們代碼沒有判斷時,程序就會崩潰。當時一直很疑惑是為啥,后來發現是數據問題,由于服務器的數據庫中有些字段為空,然后以Json形式返回給客戶端時就會出現這樣的數據。當我們通過一些第三方數據解析庫解析數據后,就會是下圖這種數據格式。null既不是字符串也不是nil所以我們有些判斷是沒用的。

解析成對象之后,如果直接向這個對象發送消息(length,count 等等)就會直接崩潰。提示錯誤為

-[NSNull length]: unrecognized selector sent to instance 0x388a4a70

解決辦法

1.對取值對象類型判斷。缺點是太過繁瑣,每次都要寫。
```

define kDictIsEmpty(dic) ([dic isKindOfClass:[NSNull class]])//宏

if ([@"你要取的值" isKindOfClass:[NSNull class]]){
//數據
}

**2.字符串匹配。在獲取到服務器返回的Json時(返回結果是string對象)通過stringByReplacingOccurrencesOfString方法,替換"null"為"空字符",然后解析。不過通過這個方法也有可能導致數據無法解析**

json = [jsonStr stringByReplacingOccurrencesOfString:@":null" withString:@""];

**3.解析時把null 類型替換成nil。**

//有返回值的宏

define isToNull(value) ({ id tmp; if ([value isKindOfClass:[NSNull class]]) tmp = value; else

tmp = nil;\ (tmp);\

})
//調用方法
label.text = isToNull(dic[@"data"]);

**4.如果使用是AFNetwork做網絡請求的話,可以用以下代碼,會自動去除空值**

AFHTTPRequestOperationManager manager = [AFHTTPRequestOperationManager manager];
AFJSONResponseSerializer response = [AFJSONResponseSerializer serializer];
response.removesKeysWithNullValues = YES;//去除空值
manager.responseSerializer = response;//申明返回的結果是json類
```
去除前

去除后 所有為空的鍵值對都不會自動去除

5.最有效而且簡單的方法。使用國外一位大牛寫的Category,叫做NullSafe ,在運行時操作,把空值置為nil,而nil是安全的,可以向nil對象發送任何message而不會奔潰。
具體使用方法項目有說明

NullSafe鏈接

轉載于:https://www.cnblogs.com/huanghaipo/p/7453086.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的iOS 后台返回json解析出现的null的解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 亚洲国产精品影院 | 午夜成人鲁丝片午夜精品 | 五月开心激情 | 天天插天天干天天操 | 中国一及毛片 | 一级黄色a级片 | 欧美成人精品欧美一级乱 | 欧美色图亚洲色 | 欧美经典一区 | 灌篮高手全国大赛电影 | 大伊人网 | 国产午夜片 | 日本一区二区三区四区五区 | 色网址在线 | 一本之道高清无码视频 | 青青草55| 舐め犯し波多野结衣在线观看 | 精品国产黄色片 | 夜色视频网站 | 天天射天天搞 | 老妇裸体性猛交视频 | 告诉我真相俄剧在线观看 | 狠狠躁夜夜躁 | 亚洲男女视频在线观看 | 亚洲视频中文字幕在线观看 | 欧美日韩一区二区三区四区五区六区 | 精品人妻无码一区二区三 | 国产-第1页-浮力影院 | 男人的天堂一区 | 午夜毛片在线 | 嫩草视频在线播放 | 91这里只有精品 | 亚洲播放| 国产精品又黄又爽又色无遮挡 | 欧美激情国产在线 | 亚洲精品久久久久久久久久吃药 | 国产一区视频观看 | 亚洲欧美另类一区 | 亚洲精品女人久久久 | 麻豆视| 在线草 | 日韩一级片免费观看 | 亚洲成a人片在线www | 国产自在线 | 成人wwwww免费观看 | 日韩国产一区二区 | 日本美女一区 | 成人乱人乱一区二区三区一级视频 | 欧美性视频一区二区 | 欧美日韩久久久 | 日本高清在线一区 | 中文字幕第一页在线视频 | 麻豆人妻少妇精品无码专区 | 91精品观看| 久久精品区 | 丰满熟妇人妻中文字幕 | 国产成人亚洲精品 | 桃色一区二区三区 | 熟妇人妻无乱码中文字幕真矢织江 | 国产精品亚洲欧美在线播放 | 高h视频在线免费观看 | 亚洲一二三不卡 | av美女在线| 男女做那个的全过程 | 欧美肥老妇视频九色 | 日本免费一区二区三区四区 | 操大逼网站| 影音先锋精品 | 国产黄色大片在线观看 | 国产午夜精品一区二区三区 | 香港三日本三级少妇66 | 97超碰成人 | 黄色成年人视频 | 性做久久久久久久久 | 黄污视频在线播放 | 国产精品视频久久久 | 求免费黄色网址 | 一级美女黄色片 | 免费黄视频网站 | 日本一区中文字幕 | 天天操女人 | 亚洲色成人www永久在线观看 | 99999精品视频 | 亚洲老妇色熟女老太 | 天堂新版8中文在线8 | 成人精品网址 | 久久国产中文 | 婷婷色婷婷开心五月四房播播 | 在线性视频 | 国产黄页 | 国产成人亚洲精品自产在线 | 91精品国产综合久久久久 | 日韩在线观看免费av | 色综合激情网 | 日本三级韩国三级三级a级按摩 | jzzijzzij亚洲成熟少妇在线播放 狠狠躁日日躁夜夜躁2022麻豆 | 国产精品久久久一区 | 日本在线观看网站 | 国产一毛片 |