ホームページ  >  記事  >  Java  >  Java の日付変換で間違った月が表示されるのはなぜですか?

Java の日付変換で間違った月が表示されるのはなぜですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-05 20:31:02836ブラウズ

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」変数。コードでは、「mm」が分を表すものと想定されているため、誤って「yyyy-mm-dd」に設定されています。ただし、日付形式では月を表すために「MM」を使用する必要があります。

解決策:

問題を解決して正しい月を取得するには、「fromFormat」変数を使用する必要があります。

String fromFormat = "yyyy-MM-dd";

この修正を行うことで、プログラムは「MM」を月として正しく認識し、日付が適切な月の値で解析されるようになります。これにより、予想される出力は「2011 年 12 月 15 日」になります。

以上がJava の日付変換で間違った月が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。