【问题标题】:How to serialize a DateTimeFormatter in scala?如何在 scala 中序列化 DateTimeFormatter?
【发布时间】:2019-11-03 03:33:22
【问题描述】:

我在 scala 中使用 DateTimeFormatter,现在它给我的序列化带来了麻烦。

【问题讨论】:

  • 您是否尝试过在您提供的 URL 中也建议作为选项的最后一个 map 方法中初始化 DateTimeFormatter?
  • 是的,同样的错误发生了。
  • 您可以在原始问题中包含该代码吗?
  • 是的,当然。我编辑了问题。
  • 错误发生在哪一行?是在初始化格式化程序时,还是在初始化 parsedDates 时?

标签: arrays scala serialization rdd


【解决方案1】:

发生错误是因为该函数仍在地图范围之外定义。重新格式化您的地图的运行方式,以包括在地图内定义的 DateTimeFormatter,如下所示:

val evega = concat.map(_.split(",")).keyBy(_(0)).groupByKey().map{case (k, v) => {
    val formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd")
    val parsedDates = v.map(sa => LocalDate.parse(sa(1), formatter))
    parsedDates.max.getDayOfYear - parsedDates.min.getDayOfYear
}}

【讨论】:

    猜你喜欢
    • 2017-01-21
    • 2018-05-28
    • 1970-01-01
    • 2022-12-14
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多