首頁 > Java > java教程 > 為什麼 SimpleDateFormat 無法解析 \'YYYY-MM-dd HH:mm\' 儘管有 `setLenient(false)`?

為什麼 SimpleDateFormat 無法解析 \'YYYY-MM-dd HH:mm\' 儘管有 `setLenient(false)`?

Mary-Kate Olsen
發布: 2024-11-03 06:51:30
原創
580 人瀏覽過

Why Does SimpleDateFormat Fail to Parse

SimpleDateFormat 「YYYY-MM-dd HH:mm」的日期解析不正確

問題:問題:

問題:

問題:

使用SimpleDateFormat,嘗試將「YYYY-MM-dd HH:mm」格式的字串解析為日期會產生錯誤的日期。儘管設定了setLenient(false),結果仍然不準確。造成這種差異的原因是什麼?

A:

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

問題在於使用的格式字串:「YYYY-MM-dd HH:mm」。解析給定格式的字串的正確格式字串應該是“yyyy-MM-dd HH:mm”,其中“yyyy”表示四位數字的年份。

SimpleDateFormat 的文件指定「the日期部分必須採用JDK 預定義格式之一,時間部分必須採用預定義時間格式之一,且日期和時間之間的分隔符號只能是預先定義分隔符之一。 將格式字串修改為“yyyy-MM-dd HH:mm”,解析應產生正確的日期和時間。

以上是為什麼 SimpleDateFormat 無法解析 \'YYYY-MM-dd HH:mm\' 儘管有 `setLenient(false)`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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