我正在尝试编写一个将NbaPlayerBoxScore
列表转储到json文件的函数。我编写了一个JsonFormat
函数,可以将NbaPlayerBoxScore
序列化到该文件中。但是,我想在文件中写一个Seq[NbaPlayerBoxScore]
。这是我的尝试
def dumpToJsonFile(contents : Seq[NbaPlayerBoxScore], protocol : JsonFormat[NbaPlayerBoxScore]) : Unit = {
import protocol._
val w = new BufferedWriter(new FileWriter(fileName))
w.write(contents.toJson.prettyPrint)
w.close
}
这是我得到的错误:
[error] /home/chris/dev/nba-api/src/main/scala/io/extrapoint/nbaapi/models/NbaPlayerBoxScoreDAO.scala:174: Cannot find JsonWriter or JsonFormat type class for Seq[io.extrapoint.nbaapi.models.NbaPlayerBoxScore]
[error] w.write(contents.toJson.prettyPrint)
[error] ^
[error] one error found
如果我为单个NbaPlayerBoxScore
NbaPlayerBoxScore
序列?
答案 0 :(得分:2)
我在发布此问题后立即解决了我的问题。我为格式化程序使用了隐式参数,然后导入了DefaultJsonProtocol
以下是解决方案:
def dumpToJsonFile(contents : Seq[NbaPlayerBoxScore])(implicit protocol : JsonFormat[NbaPlayerBoxScore]) : Unit = {
import DefaultJsonProtocol._
val w = new BufferedWriter(new FileWriter(fileName))
w.write(contents.toJson.prettyPrint)
w.close
}