Java วันที่และเวลา
Java Dates
Java ไม่มีคลาส Date ในตัว แต่เราสามารถนำเข้าjava.time
แพ็คเกจเพื่อทำงานกับ API วันที่และเวลาได้ แพ็คเกจนี้รวมคลาสวันและเวลามากมาย ตัวอย่างเช่น:
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 |
หากคุณไม่รู้ว่าแพ็คเกจคืออะไร โปรดอ่านJava Packages Tutorialของเรา
แสดงวันที่ปัจจุบัน
หากต้องการแสดงวันที่ปัจจุบัน ให้นำเข้าjava.time.LocalDate
คลาสและใช้now()
วิธีการดังนี้
ตัวอย่าง
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
}
}
ผลลัพธ์จะเป็น:
2022-01-29
แสดงเวลาปัจจุบัน
หากต้องการแสดงเวลาปัจจุบัน (ชั่วโมง นาที วินาที และนาโนวินาที) ให้นำเข้าjava.time.LocalTime
คลาสและใช้now()
วิธีการดังนี้
ตัวอย่าง
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);
}
}
ผลลัพธ์จะเป็น:
09:13:49.361203
แสดงวันที่และเวลาปัจจุบัน
หากต้องการแสดงวันที่และเวลาปัจจุบัน ให้นำเข้าjava.time.LocalDateTime
คลาสและใช้now()
วิธีการ:
ตัวอย่าง
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);
}
}
ผลลัพธ์จะเป็น:
2022-01-29T09:13:49.361977
การจัดรูปแบบวันที่และเวลา
ตัว "T" ในตัวอย่างด้านบนใช้เพื่อแยกวันที่ออกจากเวลา คุณสามารถใช้DateTimeFormatter
คลาสกับofPattern()
เมธอดในแพ็คเกจเดียวกันเพื่อจัดรูปแบบหรือแยกวิเคราะห์อ็อบเจ็กต์วันที่-เวลา ตัวอย่างต่อไปนี้จะลบทั้ง "T" และนาโนวินาทีออกจากวันที่-เวลา:
ตัวอย่าง
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);
}
}
ผลลัพธ์จะเป็น:
Before Formatting: 2022-01-29T09:13:49.361103
After Formatting: 29-01-2022 09:13:49
วิธี การofPattern()
นี้ยอมรับค่าทุกประเภท หากคุณต้องการแสดงวันที่และเวลาในรูปแบบอื่น ตัวอย่างเช่น:
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" |