如何使用Java?8中DateTimeFormatter類型轉(zhuǎn)換日期格式詳解
DateTimeFormatter類將日期格式轉(zhuǎn)換為指定的格式
在Java 8中,可以使用DateTimeFormatter類來將日期格式轉(zhuǎn)換為指定的格式(例如:yyyy-MM-dd HH:mm:ss)。
示例代碼
以下是將日期格式轉(zhuǎn)換為指定格式的示例代碼:
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
public class DateTimeFormatExample {
public static void main(String[] args) {
// 獲取當(dāng)前日期和時間
LocalDateTime dateTime = LocalDateTime.now();
// 定義日期時間格式
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
// 將日期時間按照指定格式進行格式化
String formattedDateTime = dateTime.format(formatter);
// 打印格式化后的日期時間
System.out.println("Formatted DateTime: " + formattedDateTime);
}
}
// 輸出:Formatted DateTime: 2023-07-03 11:11:00在上述代碼中,首先獲取當(dāng)前的日期和時間LocalDateTime.now(),然后通過DateTimeFormatter.ofPattern()方法定義日期時間的格式,參數(shù)為指定的格式字符串("yyyy-MM-dd HH:mm:ss")。接下來,使用format()方法將日期時間對象按照指定的格式進行格式化,返回一個格式化后的字符串。最后,打印格式化后的日期時間。
除了上述的格式字符外,還可以使用其他字符來表示日期時間的分隔符,例如:-、/、:等。
需要注意的是,DateTimeFormatter是線程安全的,因此可以在多線程環(huán)境下共享和重用同一個DateTimeFormatter對象。
將DateTimeFormatter格式化的字符串轉(zhuǎn)類型日期轉(zhuǎn)換成Date類型
可以使用DateTimeFormatter和LocalDateTime相互轉(zhuǎn)換,然后再轉(zhuǎn)換為Date格式。
// 1.將DateTimeFormatter格式化的日期字符串轉(zhuǎn)換為LocalDateTime對象 LocalDateTime localDateTime = LocalDateTime.parse(formattedDateTime, formatter); // 2.將LocalDateTime轉(zhuǎn)換為Instant對象 Instant instant = localDateTime.atZone(ZoneId.systemDefault()).toInstant(); // 3.將Instant對象轉(zhuǎn)換為Date對象 Date date = Date.from(instant); // 輸出:Mon Jul 03 13:42:08 CST 2023
ZoneId.systemDefault()是一個靜態(tài)方法,用于獲取系統(tǒng)默認的時區(qū)。
atZone()方法接受一個ZoneId參數(shù),用于指定時區(qū)。它將LocalDateTime對象與指定的時區(qū)進行關(guān)聯(lián),并返回一個在該時區(qū)下的ZonedDateTime對象。
Date.from()方法是將Instant對象轉(zhuǎn)換為Date對象的靜態(tài)方法。
請注意,java.time包中的類型(如LocalDateTime)是不可變類型,而java.util.Date是可變類型。因此,在使用過程中要注意確保線程安全性。如果需要頻繁轉(zhuǎn)換日期時間類型,建議在整個應(yīng)用程序中使用java.time包。
以上就是如何使用Java 8中DateTimeFormatter類詳解的詳細內(nèi)容,更多關(guān)于Java8 DateTimeFormatter類的資料請關(guān)注腳本之家其它相關(guān)文章!
- java用LocalDateTime類獲取當(dāng)天時間、前一天時間及本周/本月的開始和結(jié)束時間
- Java中@DateTimeFormat @JsonFormat失效原因及測試填坑
- Java關(guān)于后端怎么去接收Date、LocalDateTime類型的參數(shù)詳解
- Java8中對于LocalDateTime的序列化和反序列化問題
- Java8中的LocalDateTime你會使用了嗎
- java Date獲取年月日時分秒的實現(xiàn)方法
- java整數(shù)(秒數(shù))轉(zhuǎn)換為時分秒格式的示例
- Java輸出系統(tǒng)當(dāng)前的日期(年月日時分秒毫秒)
- Java里得到00:00:00格式的時分秒的Timestamp
- java datetime數(shù)據(jù)類型去掉時分秒的案例詳解
相關(guān)文章
如何利用Java獲取當(dāng)天的開始和結(jié)束時間
這篇文章主要介紹了如何使用Java?8的LocalDate和LocalDateTime類獲取指定日期的開始和結(jié)束時間,展示了如何通過這些類進行日期和時間的處理,從而簡化了日期時間操作,需要的朋友可以參考下2025-02-02
springMVC的RequestMapping請求不到路徑的解決
這篇文章主要介紹了springMVC的RequestMapping請求不到路徑的解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08
玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié))
這篇文章主要介紹了玩轉(zhuǎn)SpringBoot中的那些連接池(小結(jié)),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
Springboot 如何實現(xiàn)filter攔截token驗證和跨域
這篇文章主要介紹了Springboot 如何實現(xiàn)filter攔截token驗證和跨域操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08

