首頁  >  文章  >  Java  >  為什麼我的 Java 日期轉換顯示錯誤的月份?

為什麼我的 Java 日期轉換顯示錯誤的月份?

Susan Sarandon
Susan Sarandon原創
2024-11-05 20:31:02842瀏覽

Why is My Java Date Conversion Showing the Wrong Month?

不正確的日期格式轉換:日期解析故障排除

問題:將Java 中的日期從一種格式轉換為另一種格式結果月份不準確。

輸入與預期輸出:

  • 輸入日期:「2011-12-15」
  • 預期輸出:「2011 年12 月15 日”

代碼範例:

String dateStr = "2011-12-15";
String fromFormat = "yyyy-mm-dd";
String toFormat = "dd MMMM yyyy";
try {
    DateFormat fromFormatter = new SimpleDateFormat(fromFormat);
    Date date = (Date) fromFormatter.parse(dateStr);
    DateFormat toformatter = new SimpleDateFormat(toFormat);
    String result = toformatter.format(date);
} catch (ParseException e) {
    e.printStackTrace();
}

診斷:
當前問題在「fromFormat」變數。在程式碼中,它被錯誤地設定為“yyyy-mm-dd”,它期望“mm”代表分鐘。但是,日期格式應使用“MM”來表示月份。

解:

要解決問題並取得正確的月份,「fromFormat」變數應該修改為以下內容:

String fromFormat = "yyyy-MM-dd";

透過進行此更正,程式將正確地將“MM”識別為月份,確保使用適當的月份值來解析日期。這將隨後產生「2011 年 12 月 15 日」的預期輸出。

以上是為什麼我的 Java 日期轉換顯示錯誤的月份?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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