繁体   English   中英

使用数组中的值附加JSON数组

[英]Appending JSON array with values from the array

我有一个具有以下结构的json数组

{
        "connection": {
            "established": "yes"
        },
        "ping": {
            "server": "thirteen"
        }
    }

我也有一个简单的服务器名称数组,称为servers

我的目标是将servers数组中的值附加到Json数组-复制“连接”,“已建立”,“是”,“ ping”,“服务器”值,并仅修改“十三”值。

这样最终结果看起来像这样

{
        "connection": {
            "established": "yes"
        },
        "ping": {
            "server": "fourteen"
        }
    }, 
{
        "connection": {
            "established": "yes"
        },
        "ping": {
            "server": "fifteen"
        }
    }

等等

我尝试实现SwiftyJSON数组库,但并没有真正理解如何将值附加到JSON本身。

有办法管理吗?

感谢任何见解!

我希望这是您要寻找的。 我花了一些时间来了解您的要求:)

// Initial Data - So called JSON Array
var dict1 = ["connection" : ["established": "yes"], "ping" : ["server" : "twelve"]]
var dict2 = ["connection" : ["established": "yes"], "ping" : ["server" : "thirteen"]]
var array = [dict1, dict2]

// Servers Array
var servers = ["fourteen", "fifteen"]

// First lets filter out dictionary where ping.server = thirteen
let predicate = NSPredicate(format: "ping.server = %@", "thirteen")

// Filtered dictionary
var targetDict = array.filter({
    predicate.evaluateWithObject($0)
})[0]

// Now lets loop on servers and modify filtered dictionary and add to parent array
for server in servers {
    targetDict["ping"]!["server"]! = server
    array.append(targetDict)
}

print("\(array)")

使用SwiftyJSON尝试一下(未测试)

Json["ping"] as NSDictionary)["server"] as NSString = "Your Value"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM