首頁 > Java > java教程 > 為什麼我的 Java SimpleDateFormat 會將'mm”解析為分鐘而不是月份,我該如何修復它?

為什麼我的 Java SimpleDateFormat 會將'mm”解析為分鐘而不是月份,我該如何修復它?

Linda Hamilton
發布: 2024-12-17 07:16:26
原創
361 人瀏覽過

Why Does My Java SimpleDateFormat Parse

SimpleDateFormat 解析歧義已解決

SimpleDateFormat 類別用於在 Java 中解析日期。然而,由於其嚴格的解析規則,偶爾可能會出現錯誤。一個常見問題是對月份和分鐘規範的誤解。

在最近的一個案例中,開發人員遇到了一個問題,其中代碼:

SimpleDateFormat sf = new SimpleDateFormat("yyyy-mm-dd'T'HH:mm:ss");

String str = "2010-06-13T00:00:00";

Date date = sf.parse(str);
登入後複製

將日期解析為“Wed Jan 13 00” :00:00 EST 2010”而不是預期的「Wed Jun 13 00:00:00 EST 2010."

解決方法

問題在於日期格式字串。在提供的格式中,「mm」代表分鐘,而「MM」代表月。要修正此問題,開發人員只需將格式字串變更為:

"yyyy-MM-dd'T'HH:mm:ss"
登入後複製

這可確保使用「MM」表示月份,並且程式碼現在將正確地將日期解析為「Wed Jun 13 00” :00:00 EST 2010.”

注意 SimpleDateFormat 文件中提供的詳細格式說明符至關重要,以避免出現這種情況解析錯誤。

以上是為什麼我的 Java SimpleDateFormat 會將'mm”解析為分鐘而不是月份,我該如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板