使用groovy替换json中的数字变量

时间:2018-04-20 11:47:29

标签: json jenkins grails groovy jenkins-groovy

我有一个json,它有一些我想要动态的数字,并使用groovy替换值。如果有更好的方法,请告诉我,因为我已经习惯了转换但不能正常工作。 对于前者 {    工作名: “”,    protocolName: “TCP”,    PORTNO: “” } 我能够在groovy中替换使用replace的字符串的作业名称,但是我无法替换端口号。最终的json应该如下所示

{    工作名:“myjob”    protocolName: “TCP”,    PORTNO:1112 }

请告诉我是否有办法在groovy

中执行此操作

1 个答案:

答案 0 :(得分:0)

这样的事情:

String str = '{ "jobName":"", "protocolName":"tcp", "portNo":"" }'
def json = new JsonSlurper().parseText(str)
json.jobName = 'myJob'
json.portNo = 1112
println new JsonOutput().prettyPrint(new JsonOutput().toJson(json))