Если вам нужна дата в формате ГГГГ-ММ-ДД , то вам не нужен экземпляр Calendar
или Date
.
Просто используйте SimpleDateFormat
, как это:
class Converters {
@TypeConverter
fun fromTimestamp(timeStamp: Long?): String? {
return timeStamp?.let { FORMATTER.format(timeStamp) }
}
@TypeConverter
fun dateToTimestamp(timeStamp: String?): Long? {
return timeStamp?.let { FORMATTER.parse(it)?.time }
}
companion object{
val FORMATTER = SimpleDateFormat("yyy-MM-dd")
}
}
, но если вам нужны экземпляры календаря по какой-либо причине, это может быть удобно (хотя я бы посоветовал вам использовать метод, основанный на метках времени / выше)>
class Converters {
@TypeConverter
fun fromTimestamp(value: Long?): Calendar? {
return value?.let { Calendar.getInstance().apply { timeInMillis = it } }
}
@TypeConverter
fun dateToTimestamp(calendar: Calendar?): Long? {
return calendar?.timeInMillis
}
}