如何从 iOS 中的 JSON 数组中删除空对象?

Posted

技术标签:

【中文标题】如何从 iOS 中的 JSON 数组中删除空对象?【英文标题】:How can I remove empty objects from JSON array in iOS? 【发布时间】:2016-05-21 05:32:34 【问题描述】:

[
   "latitude":"", "longtitude":"",
   "latitude":"13.0856", "longtitude":"70.2423",
   "latitude":"13.0856", "longtitude":"70.2423"
]

这个数组中的第一对纬度和经度是无效的,所以当我尝试在mapview中显示这个数组中的所有坐标时,第一个点落在海中的某个地方,这就是我想删除那个点的原因来自数组。

我该怎么做?

【问题讨论】:

将JSON转换成NSMutableDictionary,获取对象的值,看是否为空。如果是,请删除它们。 如果它是空的,什么也不做,继续你的过程 这不是一本有效的字典。键必须是唯一的。 @ozgur 是正确的,在您最近的编辑中,您的字典无效。如果你必须使用相同的键,它应该是一个字典数组。 【参考方案1】:

是的,您可以在将 JSON 转换为字典时将其删除。

SWIFT 中像这样写,

let dict : NSMutableDictionary = try NSJSONSerialization.JSONObjectWithData(operation.HTTPRequestOperation.responseData, options: NSJSONReadingOptions.MutableContainers) as! NSMutableDictionary
if(dict.valueForKey("customer_latitude") as! String == "" && dict.valueForKey("customer_longtitude") as! String == "")

       // Don't add value

else

       // Your code here

希望这会对你有所帮助。

【讨论】:

以上是关于如何从 iOS 中的 JSON 数组中删除空对象?的主要内容,如果未能解决你的问题,请参考以下文章

如何从空嵌套对象和空数组中清除 json

单击事件后如何从 ReactJS 中的数组中删除对象

从数组中的 JSON 对象中删除属性 [重复]

如何从IOS中的字典数组中删除重复性? [关闭]

从数组中删除项目(来自 API 的带有 JSON 的 Restkit 项目)

如何在 Ios 中解析数组数据中的嵌套 Json 对象