Datum a čas Java


Termíny Java

Java nemá vestavěnou třídu Date, ale můžeme importovat java.time balíček pro práci s API data a času. Balíček obsahuje mnoho tříd pro datum a čas. Například:

Class Description
LocalDate Represents a date (year, month, day (yyyy-MM-dd))
LocalTime Represents a time (hour, minute, second and nanoseconds (HH-mm-ss-ns))
LocalDateTime Represents both a date and a time (yyyy-MM-dd-HH-mm-ss-ns)
DateTimeFormatter Formatter for displaying and parsing date-time objects

Pokud nevíte, co je to balíček, přečtěte si náš Výukový program pro balíčky Java .


Zobrazit aktuální datum

Chcete-li zobrazit aktuální datum, importujte java.time.LocalDatetřídu a použijte její now()metodu:

Příklad

import java.time.LocalDate; // import the LocalDate class

public class Main {
  public static void main(String[] args) {
    LocalDate myObj = LocalDate.now(); // Create a date object
    System.out.println(myObj); // Display the current date
  }
}

Výstupem bude:

2022-01-29

Zobrazit aktuální čas

Chcete-li zobrazit aktuální čas (hodinu, minutu, sekundu a nanosekundy), importujte java.time.LocalTimetřídu a použijte její now()metodu:

Příklad

import java.time.LocalTime; // import the LocalTime class

public class Main {
  public static void main(String[] args) {
    LocalTime myObj = LocalTime.now();
    System.out.println(myObj);
  }
}

Výstupem bude:

16:13:38.968548


Zobrazení aktuálního data a času

Chcete-li zobrazit aktuální datum a čas, importujte java.time.LocalDateTimetřídu a použijte její now()metodu:

Příklad

import java.time.LocalDateTime; // import the LocalDateTime class

public class Main {
  public static void main(String[] args) {
    LocalDateTime myObj = LocalDateTime.now();
    System.out.println(myObj);
  }
}

Výstupem bude:

2022-01-29T16:13:39.014499

Formátování data a času

"T" ve výše uvedeném příkladu se používá k oddělení data od času. DateTimeFormatterTřídu s ofPattern()metodou ve stejném balíčku můžete použít k formátování nebo analýze objektů data-čas. Následující příklad odstraní z data-času „T“ i nanosekundy:

Příklad

import java.time.LocalDateTime; // Import the LocalDateTime class
import java.time.format.DateTimeFormatter; // Import the DateTimeFormatter class

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

    String formattedDate = myDateObj.format(myFormatObj);
    System.out.println("After formatting: " + formattedDate);
  }
}

Výstupem bude:

Before Formatting: 2022-01-29T16:13:39.014665
After Formatting: 29-01-2022 16:13:39

Metoda ofPattern()přijímá všechny druhy hodnot, pokud chcete zobrazit datum a čas v jiném formátu. Například:

Value Example Tryit
yyyy-MM-dd "1988-09-29"
dd/MM/yyyy "29/09/1988"
dd-MMM-yyyy "29-Sep-1988"
E, MMM dd yyyy "Thu, Sep 29 1988"