0

我使用JSONObject(map.toMap)将 Scala 映射转换为 JSON 。如何解码以取回地图?另外,有没有更好的方法将 Scala Map 编码为 JSON 并对其进行解码?

4

2 回答 2

1

scala.util.parsing.json.JSONObject有一个obj返回 a 的方法Map[String, Any]

scala> val map = Map("zero" -> 0, "one" -> 1, "two" -> 2)
map: scala.collection.immutable.Map[String,Int] = Map(zero -> 0, one -> 1, two -> 2)

scala> scala.util.parsing.json.JSONObject(map)
res0: scala.util.parsing.json.JSONObject = {"zero" : 0, "one" : 1, "two" : 2}

scala> res0.obj
res1: Map[String,Any] = Map(zero -> 0, one -> 1, two -> 2)
于 2013-07-08T05:21:45.473 回答
0

您可以使用Jerkson库中的 parse 方法:

import com.codahale.jerkson.Json._
parse[Map[String,Any]](JSONObject(map.toMap).toString)
于 2013-07-08T05:29:09.127 回答