在解析json时解除与\和\\运算符的区别

时间:2013-09-03 08:57:52

标签: lift lift-json

使用net.liftweb.json解析json时有什么区别\和\ _运算符?

import net.liftweb.json._
 val parsed = JsonParser.parse(jsonString)
 val name = parsed.\("firstName")
 val userId = parsed.\\("userId")

1 个答案:

答案 0 :(得分:1)

“\\”将提取该值,即使它存在于嵌套的json中,而“\”仅在作为顶级属性存在时提取该值。

考虑这个json

 val json = """{"nested1":{"nested2": {"myKey":"myValue"}}}"""
 val jsonMsg = parse(json)

在这种情况下

 (jsonMsg \ "myKey").values

重演无

其中

 (jsonMsg \\ "myKey").values

返回myValue