fun main() {
// get "now" as Instant
val now = Instant.now()
// print the java.util.Date created from the Instant
println(Date.from(now))
// use the Instant plus 5 days to create another date
val date = Date.from(now.plus(5, ChronoUnit.DAYS))
// create a formatter for the Date
val formatter = SimpleDateFormat("yyyy-MM-dd")
// and print it using the formatter
println(formatter.format(date))
}
输出(刚才在我的中欧机器上):
Thu Feb 09 15:31:06 CET 2023
2023-02-14
如果你真的需要使用一个LocalDateTime,它没有区域或偏移量,你将不得不添加一个,转换结果(一个ZonedDateTime或一个OffsetDateTime)toInstant()和创建Date s from那些... 如果只涉及日期(年、月、日)而不涉及时间,那么可以简单地使用java.time.LocalDate:
fun main() {
// get "today" as LocalDate
val today = LocalDate.now()
// print it using toString() implicitly
println(today)
// add five days
val fiveDaysLater = today.plusDays(5)
// and print it formatted by a prebuilt formatter
println(fiveDaysLater.format(DateTimeFormatter.ISO_LOCAL_DATE))
}
1条答案
按热度按时间hfyxw5xn1#
要使
LocalDateTime
可转换为java.util.Date
,您需要添加强制信息...在尝试之前,请考虑一下是否可以使用
Instant.now()
,因为传统兼容性方法需要Instant
s作为参数:输出(刚才在我的中欧机器上):
如果你真的需要使用一个
LocalDateTime
,它没有区域或偏移量,你将不得不添加一个,转换结果(一个ZonedDateTime
或一个OffsetDateTime
)toInstant()
和创建Date
sfrom
那些...如果只涉及日期(年、月、日)而不涉及时间,那么可以简单地使用
java.time.LocalDate
:输出: