如何在 Java 中獲取當前的日期時間

Rupam Yadav 2023年10月12日
  1. 在 Java 中 LocalDateTime.now() 獲取當前日期和時間的方法
  2. 在 Java 中 ZonedDateTime.now() 獲取帶有時區的當前日期和時間
  3. 在 Java 中 Calendar.getInstance() 獲取當前日期和時間
如何在 Java 中獲取當前的日期時間

我們將介紹 Java 中可以獲取當前日期時間的各種方法。我們將看到詳細的例子,以便更好地理解事情。

在 Java 中 LocalDateTime.now() 獲取當前日期和時間的方法

我們可以使用 LocaleDateTime 類的 now() 方法獲得當前的日期-時間。它以 YYYY-MM-DD-hh-mm-ss.zz 格式返回日期和時間,比如 2020-09-22T14:39:33.889798

為了使它更容易閱讀,我們將使用 DateTimeFormatter.ofPattern(pattern),它需要一個日期-時間模式,我們可以根據我們的需要定製。

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

public class Main {
  public static void main(String[] args) {
    DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm:ss");
    System.out.println("yyyy/MM/dd HH:mm:ss-> " + dtf.format(LocalDateTime.now()));

    DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yy/MM/dd HH:mm:ss");
    System.out.println("yy/MM/dd HH:mm:ss-> " + dtf2.format(LocalDateTime.now()));

    DateTimeFormatter dtf3 = DateTimeFormatter.ofPattern("yyyy/MMMM/dd HH:mm:ss");
    System.out.println("yyyy/MMMM/dd HH:mm:ss-> " + dtf3.format(LocalDateTime.now()));

    DateTimeFormatter dtf4 = DateTimeFormatter.ofPattern("yyyy/MM/dd HH:mm");
    System.out.println("yyyy/MM/dd HH:mm-> " + dtf4.format(LocalDateTime.now()));

    DateTimeFormatter dtf5 = DateTimeFormatter.ofPattern("yyyy/MM/dd hh:mm");
    System.out.println("yyyy/MM/dd hh:mm:ss-> " + dtf5.format(LocalDateTime.now()));
  }
}

輸出:

yyyy/MM/dd HH:mm:ss-> 2020/09/22 15:07:01
yy/MM/dd HH:mm:ss-> 20/09/22 15:07:01
yyyy/MMMM/dd HH:mm:ss-> 2020/September/22 15:07:01
yyyy/MM/dd HH:mm-> 2020/09/22 15:07
yyyy/MM/dd hh:mm:ss-> 2020/09/22 03:07

在 Java 中 ZonedDateTime.now() 獲取帶有時區的當前日期和時間

時區是日期和時間的一個重要部分,我們可以使用 ZonedDateTime.now() 來獲取帶有時區的日期時間。我們可以使用 ZonedDateTime.now() 獲得帶有時區的日期時間。

這還不是全部,因為我們可以通過在 ZonedDateTime.now() 中傳遞 ZoneId 引數來獲得每個時區的時間。

請看下面的例子。

import java.time.ZonedDateTime;

public class Main {
  public static void main(String[] args) {
    System.out.println(ZonedDateTime.now());

    System.out.println("Get current timezone " + ZonedDateTime.now().getZone());

    System.out.println(
        "Get time of different timezone: " + ZonedDateTime.now(ZoneId.of("America/New_York")));
  }
}

輸出:

2020-09-22T15:53:32.635585+05:30[Asia/Kolkata]
Get current timezone Asia/Kolkata
Get time of different timezone: 2020-09-22T06:23:32.643391-04:00[America/New_York]

在 Java 中 Calendar.getInstance() 獲取當前日期和時間

另一種獲取當前日期/時間的方法是使用 Calendar.getInstance() 返回一個帶有當前日期和時間的 Calendar 物件,可以使用 getTime() 方法將其轉換為 Date/Time 格式。

我們可以看到示例中顯示了日期時間。

import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Main {
  public static void main(String[] args) {
    String timeStamp =
        new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(Calendar.getInstance().getTime());

    System.out.println(timeStamp);
  }
}

輸出:

2020/09/22 15:59:45
作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

相關文章 - Java DateTime