作为练习和一些内部UTIL我建,我想采用Java属性文件转换成JSON层次转换Java属性映射到嵌套地图JSON
foo.bar=15
foo.lots.dir=/tmp/test
foo.baz.host=localhost
foo.baz.port=333
我已经成功地转换为Scala的地图,这里是代码:
import java.util._
import scala.io._
import scala.collection.JavaConverters._
import java.io._
val props : Properties = new Properties();
在REPL,你
scala> props.asScala
res3: scala.collection.mutable.Map[String,String] = Map(foo.bar -> 15, foo.lots.dir -> /tmp/test, foo.baz.host -> localhost, foo.baz.port -> 333)
问题现在变成了,我怎么遍历这个地图和折叠点符号嵌套地图:
Map(
foo -> Map(
bar -> 15,
baz -> Map(
port -> 333,
host -> localhost
)
)
)
也许使用Scala的递归? ;-)
这将馈入JSON构建器并将其转换为JSON格式。 (其中代码我将在这里发布为编辑,一旦我找出如何做上述嵌套地图)