默认情况下,ThreeTenABP.LocalDateTime将转换为
{"date":{"day":10,"month":4,"year":2018},"time":{"hour":3,"minute":34,"nano":115000000,"second":18}}
我可以写一个适配器来支持ISO日期字符串 2018-04-10T03:45:26.009
class LocalDateTimeAdapter {
@ToJson
fun toJson(value: LocalDateTime): String {
return FORMATTER.format(value)
}
@FromJson
fun fromJson(value: String): LocalDateTime {
return FORMATTER.parse(value, LocalDateTime.FROM)
}
companion object {
private val FORMATTER = DateTimeFormatter.ISO_LOCAL_DATE_TIME
}
}
Run Code Online (Sandbox Code Playgroud)
如何编写可以支持这两种格式的适配器(fromJson)
{"date":{"day":10,"month":4,"year":2018},"time":{"hour":3,"minute":34,"nano":115000000,"second":18}}2018-04-10T03:45:26.009除了确定使用哪种格式之外fromJson,我很好奇Moshi如何在内部为LocalDateTime执行toJson/fromJson