[英]Groovy - parse stringified JSON
我有一个字符串化的json看起来像这样:
{u'a': u'1', u'b': 2, u'c': 3 }
我正在尝试将其解析为JSON对象。
我尝试将JsonSlurper
与以下代码结合使用:
def jsonSlurper = new JsonSlurper()
def object = jsonSlurper.parseText(param)
object.a
但是由于u
而失败了:
Caused by: groovy.json.JsonException: expecting '}' or ',' but got current char 'u' with an int value of 117
The current character read is 'u' with an int value of 117
expecting '}' or ',' but got current char 'u' with an int value of 117
line number 1
index number 1
{a': u'1', u'b': 2, u'c': 3}
如何解析此字符串?
非常感谢
因此,这看起来像有效的Python,而不是JSON。 假设您控制传递数据的Python程序,请在该程序中执行以下操作:
import json
json.dumps( {u'a': u'1', u'b': 2, u'c': 3 } )
如果您不控制Python,或者从bash管道调用Groovy脚本,那么可以将以下步骤添加到管道中吗?
echo "{u'a': u'1', u'b': 2, u'c': 3 }" | python -c "import json, sys, fileinput; print json.dumps( eval( (open(sys.argv[1] ) if sys.argv[1:] else sys.stdin).read())) "
在最后一种情况下,您可以从Groovy调用那行Python。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.