首頁 >Java >java教程 >如何在 Java 中解析日期並解決'java.text.ParseException: Unparseable date”錯誤?

如何在 Java 中解析日期並解決'java.text.ParseException: Unparseable date”錯誤?

DDD
DDD原創
2024-11-19 19:26:02938瀏覽

How to Parse Dates in Java and Resolve the

使用Java 解析日期:解決「java.text.ParseException: Unparseable date」問題

嘗試在Java 中解析字串日期時,確保日期格式模式與輸入字串精確對齊至關重要。在您的情況下,異常“java.text.ParseException:不可解析的日期”表示模式與輸入之間不符。

您的原始模式「MMM d,yyyy HH:mm:ss」假設日期格式為「2013 年 6 月 1 日 12:53:10」。但是,輸入字串包含附加訊息,特別是“Sat”表示星期幾,“IST”表示時區。

解決方案:

解決此問題,更新日期格式模式以準確匹配輸入字串。更正後的模式為:

SimpleDateFormat sdf = new SimpleDateFormat("EE MMM dd HH:mm:ss z yyyy", Locale.ENGLISH);

此模式包括:

  • EE:一週中的某一天(例如「星期六」)
  • MMM:三日中的某一天(例如「星期六」)
  • MMM:三天(例如「星期六」 -字母月份縮寫(例如“Jun”)
  • dd:一個月中的第幾天(例如“01”)
  • HH:24 小時制小時(例如“12”)
  • mm:分鐘(例如「53」)
  • ss :第二個(例如「10」)
  • z:時區縮寫(例如「IST」)
yyyy:年份(例如「2013」)

列印所需格式:

Date parsedDate = sdf.parse(date);
SimpleDateFormat print = new SimpleDateFormat("MMM d, yyyy HH:mm:ss");
System.out.println(print.format(parsedDate));
使用正確的模式成功解析日期後,您可以使用單獨的SimpleDateFormat 實例:

註釋:
  • 要避免特定於區域設定的問題,請顯式指定Locale.ENGLISH 作為用於執行以下操作的SimpleDateFormat 的區域設定parse.
如果輸入字串包含不明確的時區縮寫,例如“IST”,建議包含完整的時區名稱。

以上是如何在 Java 中解析日期並解決'java.text.ParseException: Unparseable date”錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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