Cách lấy Dấu thời gian hiện tại trong Java

Cach Lay Dau Thoi Gian Hien Tai Trong Java



Đồng hồ hệ thống của bạn chỉ định ngày và dấu thời gian cho mỗi tệp bạn tạo và cập nhật trên máy tính của mình, email bạn đã gửi hoặc nhận, v.v. Mọi hoạt động của máy tính phụ thuộc vào ngày và giờ. Đôi khi, ngày hoặc giờ hiện tại có thể được yêu cầu trong khi phát triển ứng dụng. Java cho phép bạn đặt và điều chỉnh ngày giờ bằng hai gói java.time và java.util.

Hướng dẫn này sẽ trình bày các cách lấy dấu thời gian hiện tại trong Java.

Làm thế nào để lấy Dấu thời gian hiện tại trong Java?

Để nhận được dấu thời gian hiện tại trong Java, bạn có thể sử dụng các phương thức của các lớp cho sẵn dưới đây:







    • Lớp ngày tháng
    • Lớp ZonedDateTime
    • Lớp học tức thì
    • Lớp LocalDateTime

Chúng ta hãy kiểm tra hoạt động của các phương thức của các lớp được đề cập!



Phương pháp 1: Lấy dấu thời gian hiện tại bằng cách sử dụng lớp ngày

Để lấy dấu thời gian hiện tại, bạn có thể sử dụng nút “ Ngày ”Của gói java.util với“ SimpleDateFormat ”Đối tượng lớp để định dạng dấu thời gian bằng cách sử dụng định dạng mong muốn.



Cú pháp





Để lấy dấu thời gian hiện tại bằng cách sử dụng Lớp ngày với lớp SimpleDateFormat, hãy sử dụng cú pháp sau:

df.format ( Ngày mới ( ) ) ;


Nơi đây, ' df Đối tượng 'là một đối tượng lớp SimpleDateFormat gọi' định dạng() ”Và chuyển một đối tượng lớp Date mới làm tham số.



Thí dụ

Trong ví dụ này, trước tiên chúng ta sẽ tạo một thể hiện của lớp SimpleDateFormat và chuyển một định dạng mà chúng ta muốn sử dụng để hiển thị ngày tháng:

SimpleDateFormat df = new SimpleDateFormat ( 'dd / MM / yyyy.HH: mm: ss' ) ;


Sau đó, chúng tôi sẽ tạo một biến kiểu Chuỗi có tên là “ timeStamp ”Lưu trữ giá trị dấu thời gian hiện tại ở định dạng được chỉ định:

String timeStamp = df.format ( Ngày mới ( ) ) ;


Cuối cùng, chúng tôi sẽ in biến giá trị timeStamp trên cửa sổ bảng điều khiển:

System.out.println ( 'Dấu thời gian hiện tại: ' + timeStamp ) ;



Đầu ra hiển thị dấu thời gian hiện tại ở định dạng được chỉ định:


Hãy lấy dấu thời gian hiện tại trong một khu vực cụ thể.

Phương pháp 2: Lấy dấu thời gian hiện tại bằng lớp ZonedDateTime

Phần này sẽ trình bày quy trình lấy dấu thời gian hiện tại của khu vực cụ thể bằng cách sử dụng “ ZonedDateTime ' lớp. Lớp ZonedDateTime tạo dấu thời gian chứa dữ liệu vùng. Vùng mặc định của hệ thống được lấy bằng cách sử dụng “ mặc định hệ thống() ' bây giờ() ' phương pháp.

Cú pháp

Để lấy dấu thời gian hiện tại cho khu vực của hệ thống bằng cách sử dụng “ ZonedDateTime ”, Sử dụng cú pháp được cung cấp bên dưới:

ZonedDateTime.now ( valueOfZoneId ) ;


Ở đây, lớp ZonedDateTime sẽ gọi “ bây giờ() ”Bằng cách chuyển một biến ZoneId lưu trữ dấu thời gian hiện tại cho vùng của hệ thống.

Thí dụ

Đầu tiên, chúng tôi sẽ nhận được dấu thời gian hiện tại với thông tin khu vực bằng cách sử dụng “ mặc định hệ thống() ”Của ZoneId và lưu trữ nó trong một đối tượng có tên là“ vùng ”:

Vùng ZoneId = ZoneId.systemDefault ( ) ;


Sau đó, chúng tôi sẽ gọi là “ bây giờ() ”Bằng cách chuyển vùng làm đối số. Giá trị đầu ra kết quả sẽ được lưu trong “ withDateTime ' sự vật:

ZonedDateTime zDateTime = ZonedDateTime.now ( vùng ) ;


Cuối cùng, chúng tôi sẽ in giá trị của đối tượng ZonedDateTime:

System.out.println ( 'Dấu thời gian hiện tại: ' + zDateTime ) ;



Kết quả hiển thị dấu thời gian hiện tại của khu vực của chúng tôi, đó là “ Châu Mỹ / Chicago ”:


Hãy thử một cách tiếp cận khác để lấy dấu thời gian hiện tại trong Java.

Phương pháp 3: Lấy dấu thời gian hiện tại bằng cách sử dụng lớp tức thì

Các ' Lập tức ”Lớp là cách triển khai phổ biến nhất của một thời điểm hoàn toàn không thay đổi trong thời gian. Của nó ' bây giờ() ”Được sử dụng để lấy dấu thời gian hiện tại trong các phiên bản được gọi là giây.

Cú pháp

Thực hiện theo cú pháp đưa ra bên dưới để lấy dấu thời gian hiện tại bằng cách sử dụng “ Lập tức ' lớp:

Instant.now ( ) ;


Thí dụ

Ở đây, trước tiên chúng ta sẽ tạo một đối tượng của lớp Instant có tên là “ Dấu thời gian hiện tại 'Lưu trữ giá trị của dấu thời gian hiện tại bằng cách gọi' bây giờ() ' phương pháp:

Hiện tại tức thìTimeStamp = Instant.now ( ) ;


Sau đó, in giá trị dấu thời gian hiện tại bằng cách sử dụng “ System.out.println () ' phương pháp:

System.out.println ( 'Dấu thời gian hiện tại: ' + currentTimeStamp ) ;



Đầu ra hiển thị dấu thời gian hiện tại trong các phiên bản và “ T 'Trong đầu ra đại diện cho' Thời gian , ”Đóng vai trò là khoảng thời gian nghỉ giữa ngày và giờ:


Bây giờ, hãy chuyển sang phương pháp cuối cùng để lấy dấu thời gian hiện tại trong Java.

Phương pháp 4: Lấy dấu thời gian hiện tại bằng cách sử dụng lớp LocalDateTime

Trong phần này, chúng tôi sẽ cho bạn biết cách bạn có thể lấy dấu thời gian hiện tại bằng cách sử dụng “ LocalDateTime ' lớp. Bạn có thể sử dụng nó với “ DateTimeFormatter ”Để định dạng nó theo mẫu mong muốn. Đây là lớp phổ biến nhất cho Ngày và giờ trong Java.

Cú pháp

Làm theo cú pháp đã cho để sử dụng phương thức now () của lớp LocalDateTime:

LocalDateTime.now ( ) ;


Thí dụ

Trong ví dụ này, trước tiên chúng tôi sẽ tạo một “ ngày giờ ”Đối tượng của lớp LocalDateTime lưu trữ giá trị của dấu thời gian hiện tại bằng cách gọi“ bây giờ() ' phương pháp:

LocalDateTime dateTime = LocalDateTime.now ( ) ;


Sau đó, chúng tôi sẽ thiết lập mô hình bằng cách sử dụng “ ofPattern () ”Của lớp DateTimeFormatter và sau đó gọi“ định dạng() 'Bằng cách chuyển' ngày giờ ”Đối tượng như một đối số:

Chuỗi currentTimeStamp = DateTimeFormatter.ofPattern ( 'yyyy / MM / dd; HH: mm: ss' ) .định dạng ( ngày giờ ) ;


Cuối cùng, in dấu thời gian hiện tại trên bảng điều khiển:

System.out.println ( 'Dấu thời gian hiện tại: ' + currentTimeStamp ) ;



Đầu ra


Chúng tôi đã đề cập đến nhiều cách khác nhau để lấy dấu thời gian hiện tại trong Java.

Sự kết luận

Để lấy dấu thời gian hiện tại trong Java, bạn có thể sử dụng các phương thức của lớp Date, lớp ZonedDateTime, lớp Instant và lớp LocalDateTime. Các lớp này thuộc về gói java.time và java.util. Họ sử dụng các phương pháp như “ bây giờ() ',' định dạng() ',' họa tiết() ', và như thế. Trong hướng dẫn này, chúng tôi đã trình bày tất cả các cách để lấy dấu thời gian hiện tại trong Java với các ví dụ chi tiết.