【发布时间】:2020-09-25 08:03:56
【问题描述】:
我正在将时间数据作为格式 (HHMMSSSHS) 的 csv 文件接收到我的源中。我不确定格式中的 HS 代表什么。示例数据将类似于 15110708。
我正在使用接收的列和数据在 databricks 表中创建表。我想在 scala 中处理时将此字段转换为时间。 我正在使用 UDF 对旅途中的任何数据进行格式化。但是为此,我在编写一个只解析时间的 UDF 时完全被卡住了。
最终输出应为 15:11:07:08 或任何适合此字符串的时间格式。
我尝试使用 java.text.SimpleDateFormat 并遇到无法解析的字符串问题。
有什么方法可以将上面给出的字符串转换为时间格式?
我将此值作为列存储在 databricks 笔记本表中。除了字符串还有其他格式可以只保存时间值吗?
【问题讨论】:
-
你能写一些代码吗?
-
我建议你不要使用
SimpleDateFormat。这个类是出了名的麻烦和过时。而是使用DateTimeFormatter和java.time, the modern Java date and time API 中的其他类。 -
我想 HS 是百分之几秒。 BTW
SimpleDateFormat不支持这些。 java.time 可以。
标签: scala datetime user-defined-functions datetime-format time-format