[英]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.