Groovy:将字符串转换为Json对象

时间:2019-09-05 19:15:26

标签: groovy

我想将以下字符串内容转换为Json对象,并获取name and salary的值。

def str = """
        [Employee[{
                        name=RIO,
                        age=22,
                        salary=2784165
        }],
        Employee[{
                        name=AMY,
                        age=24,
                        salary=10000
        }]]
    """

我将如何以常规方式做到这一点?需要获得给定名称的工资。

1 个答案:

答案 0 :(得分:1)

好,这是一种实现方法...

这假定所有记录的长度完全相同,均为5行,并且带有换行符,并且可以忽略每个组的第一行和最后一行:

PS C:\WINDOWS\system32> Get-CosmosDbOffer -Context $cosmosDbContext -Id 'IuX1' |
Set-CosmosDbOffer -Context $cosmosDbContext -OfferThroughput 555 -OfferIsRUPerMinuteThroughputEnabled $true

结果将是地图列表:

def result = str.trim().split('\n')*.trim()
                .collate(5)
                .collect { it[1..-2].collectEntries { it.split('[=,]').take(2) } }

随后您可以正常查询:

[[name:RIO, age:22, salary:2784165], [name:AMY, age:24, salary:10000]]