如何使用Json4s将Map转换为Json

时间:2014-06-09 08:38:02

标签: json scala json4s

我正在使用json4s库将scala中的地图转换为json,但在Map [Char,Int]上操作时仍然遇到基本错误:

以下是给我提问的代码示例。

  import org.json4s.jackson.JsonMethods._
  import org.json4s.JsonDSL.WithDouble._

    val myMap = Map('a' -> 123)

    render(myMap)

错误:(Char,Int)=>中没有可用的隐式视图org.json4s.JsonAST.JValue。

  

问题:使用Json4s将由[Char,Int]构成的Map转换为Json对象的正确方法是什么?

2 个答案:

答案 0 :(得分:5)

JSON对象的键始终是字符串,而且JSON中没有等效的Char。有关规范,请参阅json.org

您可以在呈现前转换Map[Char, Int]的键:

myMap.map { case(k, v) => (k.toString, v) }

答案 1 :(得分:1)

你也可以考虑使用

``调用println(scala.util.parsing.json.JSONObject(米))```

来自Scala 2.10