将JsObject序列保存到JSON文件中

时间:2018-12-18 13:39:34

标签: json scala playframework

我正在使用Play Framework将case类转换为JSON对象。这对于案例类LinkEvolution的许多实例而言。给定每个JSON对象的结构:

    implicit val linkIPFormat = Json.format[LinkIPs]
    implicit val linkState = Json.format[LinkState]

    // user has JsObject as type
    val linkEvolution = LinkEvolution(rawDataLink.link, reference, current, alarms)

    val user = Json.obj(
                  "link" -> rawDataLink.link,
                  "reference" -> linkEvolution.reference,
                  "current" -> linkEvolution.current,
                  "alarms" -> linkEvolution.alarms)

我有一个用户列表,所以有一个JsObject列表。 我的问题是如何将该列表保存在JSON文件中,文件的每一行都是一个JsObject。

1 个答案:

答案 0 :(得分:0)

您可以将它们转换为字符串并写入文件(我假设users = List [JsObject]):

import java.io._

val file = "file.json"
val writer = new BufferedWriter(new FileWriter(file))
users.map(_.toString).{ json =>
   writer.write(json)
   writer.newLine
}
writer.close()