2017-08-08 55 views
0

我有一些類似於下面的JSON數據,並且想要添加另一個城市名稱。我如何添加它?如何使用groovy將元素添加到json的嵌套元素

我現在的JSON數據如下所示:

{ 
    "state" : "WA", 
    "county" : { 
     "king" : { 
      "Seattle" : [ "r", "d", "n" ], 
      "Kirkland" : [ "r", "d", "w" ] 
     }, 
     "queen" : { 
      "Edmonds" : [ "r" ] 
     } 
    } 
} 

預期JSON數據應該看起來像下面這樣:

{ 
    "state" : "WA", 
    "county" : { 
     "king" : { 
      "Seattle" : [ "r", "d", "n" ], 
      "Kirkland" : [ "r", "d", "w" ] 
     }, 
     "queen" : { 
      "Edmonds" : [ "r" ] 
     } 
     "prince" : { 
      "Lynnwood" : [ "r", "d", "w" ] 
     } 
    } 
} 
+1

的[追加JSON成在Groovy一個JSON]可能的複製(https://stackoverflow.com/questions/32889997/append-json-into-a-json-in-groovy) – kiiiiNNNNNNNNNyyyy

回答

0

使用「將json附加到groovy中的json中」,我能夠使它工作。

import groovy.json.* 

String[] myArray = [ "r", "d", "w" ] 

def builder = new JsonBuilder() 
def root = builder.event{     
    "Lynnwood" myArray 
} 

def json = new JsonSlurper().parseText('''{ "state" : "WA", "county" : { "king" : { "Seattle" : [ "r", "d", "n" ], "Kirkland" : [ "r", "d", "w" ] }, "queen" : { "Edmonds" : [ "r" ] } } }''') 

// Append the built JSON to the "slurped" JSON 
json.county.prince = root.event 

// Re-build the JSON so it can saved as a String 
new JsonBuilder(json).toPrettyString()