Groovy字符串转换为HashMap

Vad*_*nko 2 string groovy hashmap

如您所知,我们可以使用toString()方法从哈希中获取字符串.所以我们得到类似于这样的字符串:

[first:[one:1.1], second:2]
Run Code Online (Sandbox Code Playgroud)

问题是,我们如何将此字符串再次转换为哈希?

tim*_*tes 7

您可以使用Eval.me 静态方法:

def map = Eval.me( '[first:[one:1.1], second:2]' )
assert map == [first:[one:1.1], second:2]
Run Code Online (Sandbox Code Playgroud)

  • @ user1560997如果输入字符串以某种方式来自不受信任的来源(例如用户),请注意代码注入攻击的可能性.在这种情况下,如果输入格式是可协商的,我建议使用JSON,然后使用类似[`JsonSlurper#parseText`]的东西(http://groovy.codehaus.org/gapi/groovy/json/JsonSlurper.html#parseText %28java.lang.String%29)来解析它:) (2认同)