Android 科特林两个日期之间的时间

Android 科特林两个日期之间的时间,android,kotlin,Android,Kotlin,我有一个字符串作为格式为yyyy MM dd的日期,我想将其与当前日期进行比较。我使用的是安卓api24,我希望能够以第一个字符串的格式告诉大家已经过了多少时间 我尝试过Calendar类,类似这样: val firstDate=Calendar.getInstance() val dateFormat=SimpleDateFormat("yyyy-MM-dd",Locale.getDefault()) firstDate.time=dateFormat.p

我有一个字符串作为格式为yyyy MM dd的日期,我想将其与当前日期进行比较。我使用的是安卓api24,我希望能够以第一个字符串的格式告诉大家已经过了多少时间

我尝试过Calendar类,类似这样:

   val firstDate=Calendar.getInstance()
   val dateFormat=SimpleDateFormat("yyyy-MM-dd",Locale.getDefault())
   firstDate.time=dateFormat.parse("2001-06-04")

但是我被困在这里,将当前时间作为日历对象。

您可以使用Java 8 datetime功能:

那就很简单了:

private fun convertFromString(datetime: String): LocalDateTime {
    val dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd", Locale.getDefault())
    return LocalDateTime.parse(datetime, dateTimeFormatter)
}

你试过什么?请出示您的代码,并明确说明您的问题所在。“以第一个字符串的格式”是什么意思?第一个字符串是日期,但是你需要一个持续时间,所以除非像“1-4-8”这样的东西是可以的,否则就没有意义了。这就是我想要的格式。在这种格式中,一个月可以累积多少天?28, 29, 30, 31? 对于一系列的日期来说,这是一种荒谬的格式。