kotlin 時刻を0時0分にリセットして表示する

kotlinで、時刻を0時0分にリセットして表示する手順を記述してます。「truncatedTo」で可能です。時分だけでなく分以下や秒以下もリセットすることができます。
環境
- OS windows11 home
- java 19.0.1
- kotlin 1.7.20-release-201
手順
日時を指定した値に変更するには、以下のメソッドで可能です。
import java.time.temporal.ChronoUnit
truncatedTo(ChronoUnit.DAYS)
実際に、変更してみます。見やすいようにフォーマットを指定して出力してます。
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
import java.time.temporal.ChronoUnit
fun main(){
val d = LocalDateTime.now()
println(d) // 2022-04-21T12:56:46.409619200
var result = d.truncatedTo(ChronoUnit.DAYS).format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm"))
println(result) // 2022/04/21 00:00
}
時刻が「00:00」にリセットされていることが確認できます。
分以下をリセット
分以下をリセットするには「ChronoUnit.HOURS」を使用します。
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
import java.time.temporal.ChronoUnit
fun main(){
val d = LocalDateTime.now()
println(d) // 2022-04-21T13:04:08.622284800
var result = d.truncatedTo(ChronoUnit.HOURS).format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"))
println(result) // 2022/04/21 13:00:00
}
秒以下をリセット
秒以下をリセットするには「ChronoUnit.MINUTES」を使用します。
import java.time.LocalDateTime
import java.time.format.DateTimeFormatter
import java.time.temporal.ChronoUnit
fun main(){
val d = LocalDateTime.now()
println(d) // 2022-04-21T13:05:49.321417400
var result = d.truncatedTo(ChronoUnit.MINUTES).format(DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss"))
println(result) // 2022/04/21 13:05:00
}
-
前の記事
mac grep実行時に大文字と小文字を区別せずに確認する 2023.08.31
-
次の記事
MariaDB 日付から英語表記の曜日を表示する 2023.09.01
コメントを書く