Java / Scala lib将点符号解析为Json字符串

时间:2016-04-26 08:56:45

标签: java json scala

我想将一些点符号映射解析为json字符串,例如我有:

componentWillUnmount

然后我想从这张地图中获取以下json字符串:

input["top.second.third0"] = 0
input["top.second.third1"] = "hello"

我知道如何使用split生成它,我问是否有可以为我做的Java / Scala库?

2 个答案:

答案 0 :(得分:0)

对于Play JSON,您可以将此类表达式解析为JsPath,然后使用它。

import play.api.libs.json._

val components = input.split("\\.")

components.headOption match {
  case Some(p) => components.tail.foldLeft(JsPath \ p) { _ \ _ }
  case _ => /* cannot parse */ ???
}

答案 1 :(得分:0)

我做这样的事情来完成这项任务。

  val input = "a.b.c"
  val components = input.split("\\.")

  val jsPath = components.headOption match {
    case Some(p) => components.tail.foldLeft(JsPath \ p) { _ \ _ }
    case _ => /* cannot parse */ ???
  }
  val obj = JsPath.createObj(jsPath -> JsString("Hello"))
  Logger.debug("after write" + obj.toString)

我不知道为什么但是如果你使用scala,似乎每个人都在使用游戏。