首頁 >Java >java教程 >為什麼 SimpleDateFormat 無法正確解析「YYYY-MM-dd HH:mm」格式的日期,如何解決此問題?

為什麼 SimpleDateFormat 無法正確解析「YYYY-MM-dd HH:mm」格式的日期,如何解決此問題?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-03 00:07:30941瀏覽

Why Does SimpleDateFormat Incorrectly Parse Dates in the

使用SimpleDateFormat 解析“YYYY-MM-dd HH:mm”格式的日期和時間

問題介紹:

當嘗試使用SimpleDateFormat 解析「YYYY-MM-dd HH:mm」格式的字串時,使用者可能會遇到不正確的日期和時間結果。具體來說,解析的日期可能與預期的日期不符。

問題:

為什麼 SimpleDateFormat 錯誤解析「YYYY-MM-dd HH:mm」中的日期格式?如何解決這個問題?

答案:

SimpleDateFormat 使用區分大小寫的模式字母來解析輸入字串。對於年份格式,「YYYY」表示帶有前導零的完整年份,而小寫「yyyy」表示不帶前導零的年份。在提供的程式碼中,錯誤地使用了模式字母“YYYY”,導致意外的日期解析。

解決方案:

要正確解析日期和時間,請使用模式中的小寫「yyyy」:

<code class="java">SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.ENGLISH);</code>

透過此修正,程式碼將以預期格式解析日期,不會出現任何問題。

其他注意事項:

使用 SimpleDateFormat 時,請仔細檢查模式字母以確保它們與所需的格式相符。有關模式字母及其對應的日期/時間格式的完整列表,請參閱 Java API 文件。

資料庫更新:

關於時間重置為的問題00:00 更新資料庫中的日期時,請確保資料庫列資料類型和Java 日期物件的時間組件相容。如果資料庫列只儲存日期,則插入時 Java 物件中的時間部分將被忽略。

以上是為什麼 SimpleDateFormat 無法正確解析「YYYY-MM-dd HH:mm」格式的日期,如何解決此問題?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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