如何在Kotlin当地时间获取当前日期(日月和年)和时间(小时,分钟和秒)?
我尝试了LocalDateTime.now()
但是它给了我一个错误Call requires API Level 26 (curr min is 21)
。
我怎么能在Kotlin得到时间和日期?
答案 0 :(得分:19)
试试这个:
val sdf = SimpleDateFormat("dd/M/yyyy hh:mm:ss")
val currentDate = sdf.format(Date())
System.out.println(" C DATE is "+currentDate)
答案 1 :(得分:11)
java.util.Calendar.getInstance()
表示使用当前区域设置和时区的当前时间。
您也可以选择导入并使用Joda-Time或其中一个forks for Android。
答案 2 :(得分:5)
当我们的minSdkVersion <26时,我的utils方法使用Calendar
获取当前日期时间。
fun Date.toString(format: String, locale: Locale = Locale.getDefault()): String {
val formatter = SimpleDateFormat(format, locale)
return formatter.format(this)
}
fun getCurrentDateTime(): Date {
return Calendar.getInstance().time
}
使用
import ...getCurrentDateTime
import ...toString
...
...
val date = getCurrentDateTime()
val dateInString = date.toString("yyyy/MM/dd HH:mm:ss")
答案 3 :(得分:4)
您可以从日历实例中获取当前的年,月,日等
val c = Calendar.getInstance()
val year = c.get(Calendar.YEAR)
val month = c.get(Calendar.MONTH)
val day = c.get(Calendar.DAY_OF_MONTH)
val hour = c.get(Calendar.HOUR_OF_DAY)
val minute = c.get(Calendar.MINUTE)
如果需要将其作为LocalDateTime,只需使用上面获得的参数进行创建
val myLdt = LocalDateTime.of(year, month, day, ... )
答案 4 :(得分:1)
尝试一下:
try_recurse_delete( pipeline_name )
do_delete(pipeline_name)
if not $error[0].contains("referenced by " + pipeline_name)
then return true
else
try_recurse_delete( get_refrencer_name($error[0]) )
答案 5 :(得分:1)
您可以使用此功能
fun getCurrentDate():String{
val sdf = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSS")
return sdf.format(Date())
}
答案 6 :(得分:0)
查看这些易于使用的Kotlin扩展名的日期格式
fun String.getStringDate(initialFormat: String, requiredFormat: String, locale: Locale = Locale.getDefault()): String {
return this.toDate(initialFormat, locale).toString(requiredFormat, locale)
}
fun String.toDate(format: String, locale: Locale = Locale.getDefault()): Date = SimpleDateFormat(format, locale).parse(this)
fun Date.toString(format: String, locale: Locale = Locale.getDefault()): String {
val formatter = SimpleDateFormat(format, locale)
return formatter.format(this)
}
答案 7 :(得分:0)
要获取Kotlin中的当前日期,请执行以下操作:
val dateNow = Calendar.getInstance().time
答案 8 :(得分:-1)
我每20秒使用一次从API中获取数据
private fun isFetchNeeded(savedAt: Long): Boolean {
return savedAt + 20000 < System.currentTimeMillis()
}
答案 9 :(得分:-1)
另一种解决方案是在build.gradle中更改项目的api级别,这将起作用。