我正在使用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对象的正确方法是什么?
答案 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