Convertendo uma data para uma string formatada
import java.text.SimpleDateFormat
import java.util.*
fun Date.dateToString(format: String = "yyyy-MM-dd HH:mm:ss"): String =
SimpleDateFormat(format, Locale.getDefault()).format(this)
Convertendo uma string para data
import java.text.SimpleDateFormat
import java.util.*
fun String.stringToDate(format: String = "yyyy-MM-dd HH:mm:ss"): Date =
SimpleDateFormat(format, Locale.getDefault()).parse(this)
Recuperando a diferença entre duas datas
import java.util.concurrent.TimeUnit
import java.util.*
infix fun Date.difHoursTo(dateTo: Date): Long =
TimeUnit.MILLISECONDS.toHours(dateTo.time - this.time)
import java.util.concurrent.TimeUnit
import java.util.*
infix fun Date.difMinutesTo(dateTo: Date): Long =
TimeUnit.MILLISECONDS.toMinutes(dateTo.time - this.time)
import java.util.concurrent.TimeUnit
import java.util.*
infix fun Date.difSecondsTo(dateTo: Date): Long =
TimeUnit.MILLISECONDS.toSeconds(dateTo.time - this.time)
Adicionando anos, meses, dias, horas, minutos ou segundos em uma data
- Extension function utilizada pelas demais
import java.util.*
fun Date.add(field: Int, amount: Int): Date {
Calendar.getInstance().apply {
time = this@add
add(field, amount)
return time
}
}
import java.util.*
fun Date.addYears(years: Int): Date =
add(Calendar.YEAR, years)
import java.util.*
fun Date.addMonths(months: Int): Date =
add(Calendar.MONTH, months)
import java.util.*
fun Date.addDays(days: Int): Date =
add(Calendar.DAY_OF_MONTH, days)
import java.util.*
fun Date.addHours(hours: Int): Date =
add(Calendar.HOUR_OF_DAY, hours)
import java.util.*
fun Date.addMinutes(minutes: Int): Date =
add(Calendar.MINUTE, minutes)
import java.util.*
fun Date.addSeconds(seconds: Int): Date =
add(Calendar.SECOND, seconds)
Gist do GitHub
Meus contatos
Top comments (0)