Kotlin - 現在の日付と時刻を取得する方法

現在の日付と時刻を取得し、さまざまな形式で出力することを説明します。 この記事では、LocalDateTimeとDateTimeFormatterを使用して日付と時刻を出力します。

現在の日付/時刻を取得する、基本的な形式で出力

LocalDateTime.now()は現在の日付と時刻を取得します。 LocalDate.nowは、現在の日付のみを取得します。

import java.time.LocalDate
import java.time.LocalDateTime

fun main(args: Array<String>) {
    val dateAndtime: LocalDateTime = LocalDateTime.now()
    val onlyDate: LocalDate = LocalDate.now()

    println("Current date and time: $dateAndtime")
    println("Current date: $onlyDate")
}

出力すると、次のような形式で出力されます。

Current date and time: 2019-03-23T00:05:54.608
Current date: 2019-03-23

ちなみに、特定の時間のLocalData、LocalDateTimeを作成するには、 of()を使用します。

LocalDate.of(2019, 3, 22) // 2019년 3월 22일
LocalDateTime.of(2019, 3, 22, 10, 10, 10) // 2019년 3월 22일 10시 10분 10초

既に定義された形式で出力

DateTimeFormatterを使用すると、別の形式で出力することができます。 ISO_DATEは、ライブラリで提供される、既に定義された形式です。加えて、様々なものがあります。

import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

fun main(args: Array<String>) {
    val current = LocalDateTime.now()
    val formatter = DateTimeFormatter.ISO_DATE
    val formatted = current.format(formatter)

    println("Current: $formatted")
}

出力

Current: 2019-03-22

ライブラリで提供されるDateTimeFormatterのフォーマットは、次のようなものがあります。

定数 出力例
ISO_DATE_TIME 2019-03-22T23:56:36.4
ISO_LOCAL_DATE 2019-03-22
ISO_LOCAL_TIME 23:56:36.4
ISO_LOCAL_DATE_TIME 2019-03-22T23:56:36.4
ISO_DATE 2019-03-22
ISO_TIME 23:56:36.4

他の形式で出力

DateTimeFormatter.ofPattern()を使用すると、必要な形式で出力することができます。代わりに、パターンを作成引数として渡さくれるします。

import java.time.LocalDateTime
import java.time.format.DateTimeFormatter

fun main(args: Array<String>) {
    val current = LocalDateTime.now()
    val formatter = DateTimeFormatter.ofPattern("yyyy년 MM월 dd일 HH시 mm분 ss초")
    val formatted = current.format(formatter)

    println("Current: $formatted")
}

出力

Current: 2019년 03월 22일 23시 46분 36초

DateTimeFormatter.ofPattern()で次のようなパターンを使用することができます。

パターン
yyyy-MM-dd “2019-07-04”
dd-MMM-yyyy “04-July-2019”
dd/MM/yyyy “04/07/2019”
yyyy-MM-dd'T'HH:mm:ssZ “2019-07-04T12:30:30+0530”
h:mm a “12:00 PM”
yyyy년 MM월 dd일 "2019년 01월 10일"

まとめ

LocalDateTime、LocalDateを作成し、さまざまな方法で出力することを知っていました。

codechachaCopyright ©2019 codechacha