Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah saya dapat mengira perbezaan antara dua tarikh dalam C#?

Bagaimanakah saya dapat mengira perbezaan antara dua tarikh dalam C#?

Patricia Arquette
Patricia Arquetteasal
2025-01-31 02:31:08627semak imbas

How Can I Efficiently Calculate the Difference Between Two Dates in C#?

c#kaedah tarikh pengiraan medium -medium

Dalam pelbagai senario pengaturcaraan, menentukan perbezaan antara bilangan hari antara kedua -dua tarikh adalah tugas yang sama. Dalam C#, terdapat banyak cara untuk mengira perbezaan ini, termasuk penggunaan kelas

dan

struktur. Date TimeSpan Gunakan Struktur Datespan

Cara mudah untuk mengira perbezaan antara bilangan hari antara kedua -dua tarikh adalah menggunakan kelas untuk mewakili dua tarikh, dan kemudian mengurangkannya untuk mendapatkan objek

:

Date TimeSpan Kod ini menggunakan atribut

objek untuk mengambil bilangan hari antara tarikh mula dan tarikh akhir. Hasil dalam contoh ini adalah 66, iaitu bilangan hari dari 1 Januari hingga 8 Mac, 2023.
<code class="language-csharp">DateTime startDate = new DateTime(2023, 1, 1);
DateTime endDate = new DateTime(2023, 3, 8);
TimeSpan days = endDate - startDate;
Console.WriteLine(days.TotalDays); // 输出:66</code>

Gunakan kelas matematik TimeSpan TotalDays

Cara lain untuk mengira perbezaan antara hari -hari antara tarikh adalah dengan menggunakan kaedah

untuk mencari perbezaan mutlak antara dua nilai tarikh yang diwakili oleh skala:

Kaedah ini bergantung kepada atribut

kelas Math.Abs(), yang mengembalikan skala skala (100 nan saat) sejak permulaan kalendar Gauogen Gaoli. Dengan mengeluarkan perbezaan ini dalam bilangan skala harian, kami mendapat bilangan hari antara dua tarikh.

<code class="language-csharp">long startDateTicks = new DateTime(2023, 1, 1).Ticks;
long endDateTicks = new DateTime(2023, 3, 8).Ticks;
long days = Math.Abs(endDateTicks - startDateTicks) / TimeSpan.TicksPerDay;
Console.WriteLine(days); // 输出:66</code>
<:> nota:

DateTime Tidak kira kaedah mana yang anda pilih, ia mesti memastikan bahawa nilai tarikh sah dan mewakili tarikh dalam kalendar Gaoli. Di samping itu, sila pertimbangkan keadaan tarikh mula lebih awal daripada tarikh akhir. Ticks

Atas ialah kandungan terperinci Bagaimanakah saya dapat mengira perbezaan antara dua tarikh dalam C#?. 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