Rumah >Java >javaTutorial >Bagaimana untuk Menghuraikan Tarikh ISO 8601 dengan \'Z\' Literal Menggunakan SimpleDateFormat?

Bagaimana untuk Menghuraikan Tarikh ISO 8601 dengan \'Z\' Literal Menggunakan SimpleDateFormat?

Susan Sarandon
Susan Sarandonasal
2024-11-04 01:46:30517semak imbas

How to Parse ISO 8601 Dates with 'Z' Literal Using SimpleDateFormat?

Menghuraikan Tarikh ISO 8601 dengan 'Z' Literal dalam SimpleDateFormat

Soalan:

Cara menghuraikan tarikh ISO 8601 yang termasuk literal "Z", menunjukkan masa UTC, menggunakan Java SimpleDateFormat?

Isu:

Menggunakan corak tarikh biasa seperti "yyyy-MM-dd'T'HH:mm:ss" atau "yyyy-MM-dd' T'HH:mm:ssz" dengan SimpleDateFormat menghasilkan penghuraian yang salah. Literal "Z", yang mewakili masa UTC, tidak dikenali.

Jawapan:

Untuk menghuraikan tarikh ISO 8601 dengan literal "Z" menggunakan SimpleDateFormat, anda boleh menggunakan yang berikut corak:

<code class="java">yyyy-MM-dd'T'HH:mm:ssX</code>

Penjelasan:

Penentukan "X" dalam corak mewakili zon waktu UTC yang diimbangi dalam format ISO 8601. Ia boleh digunakan untuk menghuraikan tarikh dengan literal "Z", yang menunjukkan offset sifar daripada UTC.

Contoh:

<code class="java">SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssX");
Date date = sdf.parse("2010-04-05T17:16:00Z");

System.out.println(date);
// Output: Sun Apr 05 17:16:00 UTC 2010</code>

Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Tarikh ISO 8601 dengan \'Z\' Literal Menggunakan SimpleDateFormat?. 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