Rumah >Java >javaTutorial >Mengapa Penukaran Tarikh Java Saya Menunjukkan Bulan yang Salah?

Mengapa Penukaran Tarikh Java Saya Menunjukkan Bulan yang Salah?

Susan Sarandon
Susan Sarandonasal
2024-11-05 20:31:02922semak imbas

Why is My Java Date Conversion Showing the Wrong Month?

Penukaran Format Tarikh Tidak Betul: Menyelesaikan Masalah Penghuraian Tarikh

Masalah: Menukar tarikh dalam Java daripada satu format ke format lain keputusan dalam bulan yang tidak tepat.

Input dan Output Jangkaan:

  • Tarikh input: "2011-12-15"
  • Output yang dijangkakan : "15 Disember 2011"

Sampel Kod:

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();
}

Diagnosis:
Isu segera adalah dalam pembolehubah "fromFormat". Dalam kod, ia telah tersilap ditetapkan kepada "yyyy-mm-dd" yang menjangkakan "mm" mewakili minit. Walau bagaimanapun, format tarikh hendaklah menggunakan "MM" untuk menandakan bulan.

Penyelesaian:

Untuk menyelesaikan isu dan mendapatkan bulan yang betul, pembolehubah "fromFormat" harus diubah suai kepada yang berikut:

String fromFormat = "yyyy-MM-dd";

Dengan membuat pembetulan ini, program akan mengenali "MM" dengan betul sebagai bulan, memastikan tarikh itu dihuraikan dengan nilai bulan yang sesuai. Ini seterusnya akan menghasilkan output yang dijangkakan pada "15 Disember 2011".

Atas ialah kandungan terperinci Mengapa Penukaran Tarikh Java Saya Menunjukkan Bulan yang Salah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn