首頁  >  文章  >  資料庫  >  以下是一些標題選項,重點關注核心問題和解決方案: 選項 1(直接且以問題為中心): * 為什麼 SimpleDateFormat.parse 在轉換 UNIX 時間時會產生不一致的輸出

以下是一些標題選項,重點關注核心問題和解決方案: 選項 1(直接且以問題為中心): * 為什麼 SimpleDateFormat.parse 在轉換 UNIX 時間時會產生不一致的輸出

Susan Sarandon
Susan Sarandon原創
2024-10-27 20:46:01632瀏覽

Here are a few title options, focusing on the core issue and solution:

Option 1 (Direct and Problem-Focused):

* Why does SimpleDateFormat.parse produce inconsistent output when converting UNIX timestamps?

Option 2 (More Specific to the Cause):

* Time

SimpleDateFormatter.parse 輸出格式差異

嘗試使用SimpleDateFormat 將UNIX 時間戳轉換為特定日期格式時,使用者可能會遇到以下日期問題:格式化和解析的輸出。

造成這種差異的一個原因是時區可能不匹配。確保 SimpleDateFormat 的時區與預期輸出相符。此外,請驗證紀元時間戳記是否依照 Date 建構函數的要求以毫秒為單位表示。

建議的解決方案:

為了避免潛在的格式問題並確保資料庫相容性,它建議將日期物件直接傳遞給 MySQL,而不是字串。利用 java.time 類別(例如 LocalDateTime)來表示日期和時間。

這是更新的程式碼片段:

<code class="java">String ep = "a1527069600";
long epoch = Long.parseLong(ep.substring(1));
Instant instant = Instant.ofEpochSecond(epoch);
LocalDateTime ldt = instant.atZone(ZoneId.of("Asia/Calcutta")).toLocalDateTime();

PreparedStatement ps = myDatabaseConnection.prepareStatement(
        "insert into my_table (my_date_time) values (?)");
ps.setObject(1, ldt);</code>

此方法可確保日期根據指定時間進行格式化區域並作為物件儲存在資料庫中,消除了格式錯誤的可能性。

以上是以下是一些標題選項,重點關注核心問題和解決方案: 選項 1(直接且以問題為中心): * 為什麼 SimpleDateFormat.parse 在轉換 UNIX 時間時會產生不一致的輸出的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn