Java - Как получить текущую дату и время

Java - Как получить текущую дату и время

В этом руководстве мы покажем вам, как получить текущую дату и время из классических APIDate иCalendar, а также из новых API даты и времени Java 8 -LocalDateTime иLocalDateс

1. Фрагменты кода

Дляjava.util.Date просто создайте новый Date ()

    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    Date date = new Date();
    System.out.println(dateFormat.format(date)); //2016/11/16 12:08:43

Дляjava.util.Calendar используется Calendar.getInstance ()

    DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    Calendar cal = Calendar.getInstance();
    System.out.println(dateFormat.format(cal)); //2016/11/16 12:08:43

Дляjava.time.LocalDateTime используется LocalDateTime.now ()

    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
    LocalDateTime now = LocalDateTime.now();
    System.out.println(dtf.format(now)); //2016/11/16 12:08:43

Дляjava.time.LocalDate используется LocalDate.now ()

    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd");
    LocalDate localDate = LocalDate.now();
    System.out.println(dtf.format(localDate)); //2016/11/16

2. Полный пример

Просмотрите полный пример Java, чтобы показать вам, как получить текущую дату, время и отображать в предопределенном формате.

GetCurrentDateTime.java

package com.example;

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Calendar;
import java.util.Date;

public class GetCurrentDateTime {

    private static final DateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
    private static final DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");

    public static void main(String[] args) {

        Date date = new Date();
        System.out.println(sdf.format(date));

        Calendar cal = Calendar.getInstance();
        System.out.println(sdf.format(cal.getTime()));

        LocalDateTime now = LocalDateTime.now();
        System.out.println(dtf.format(now));

        LocalDate localDate = LocalDate.now();
        System.out.println(DateTimeFormatter.ofPattern("yyy/MM/dd").format(localDate));

    }

}

Выход

2016/11/16 12:08:43
2016/11/16 12:08:43
2016/11/16 12:08:43
2016/11/16