![]() |
痛苦的苹果 · 保研专访 | ...· 10 月前 · |
![]() |
傻傻的凳子 · 国家知识产权局 媒体报道 ...· 11 月前 · |
|
天涯 · MySql性能(7)—MySql对order ...· 1 年前 · |
![]() |
腹黑的豆浆 · 《无尽攀登》:这才是真正的攀登者-新华网· 1 年前 · |
![]() |
彷徨的热带鱼 · 22-23 赛季欧冠切尔西 2:0 ...· 1 年前 · |
本章介绍了如何使用Groovy语言来解析和生成JSON对象。
功能 |
库 |
---|---|
JsonSlurper |
JsonSlurper是一个将JSON文本或阅读器内容解析为Groovy数据的类结构,例如地图,列表和原始类型,如整数,双精度,布尔和字符串。 |
JsonOutput |
此方法负责将Groovy对象序列化为JSON字符串。 |
JsonSlurper是一个将JSON文本或阅读器内容解析为Groovy数据结构的类,如地图,列表和原始类型,如Integer,Double,Boolean和String。
def slurper = new JsonSlurper()
JSON slurper将文本或阅读器内容解析为列表和地图的数据结构。
JsonSlurper类自带了一些用于解析器实现的变体。有时,在解析某些字符串时,您可能有不同的要求。让我们举一个例子,其中需要读取从Web服务器的响应返回的JSON。在这种情况下,使用解析器JsonParserLax变量是有益的。此parsee允许在JSON文本中的注释以及没有引号字符串等。要指定此类型的解析器,您需要在定义JsonSlurper的对象时使用JsonParserType.LAX解析器类型。
让我们看下面这个例子。示例是使用http模块从Web服务器获取JSON数据。对于这种类型的遍历,最好的选择是将解析器类型设置为JsonParserLax变体。
http.request( GET, TEXT ) {
headers.Accept = 'application/json'
headers.'User-Agent' = USER_AGENT
response.success = {
res, rd ->
def jsonText = rd.text
//Setting the parser type to JsonParserLax
def parser = new JsonSlurper().setType(JsonParserType.LAX)
def jsonResp = parser.parseText(jsonText)
}
类似地,以下附加的解析器类型在Groovy中可用 -