השוואת שני תאריכים

C#:
השוואת שני תאריכים

איך לעשות:

using System;

public class DateComparison
{
    static void Main()
    {
        DateTime date1 = new DateTime(2023, 3, 15); // 15 מרץ 2023
        DateTime date2 = DateTime.Now; // התאריך והשעה הנוכחית
        
        int comparison = DateTime.Compare(date1, date2);

        if (comparison < 0)
        {
            Console.WriteLine("date1 is earlier than date2.");
        }
        else if (comparison == 0)
        {
            Console.WriteLine("date1 is the same as date2.");
        }
        else
        {
            Console.WriteLine("date1 is later than date2.");
        }
    }
}

// פלט משתנה בהתאם לתאריך ושעה כאשר הקוד רץ

צלילה לעומק:

עד ל-C# 2.0, השוואת תאריכים הייתה מורכבת יותר – היינו צריכים להשוות כל חלק בתאריך בנפרד. עם הקדמת המחלקה DateTime, כל זה הפך לפשוט ברמות. כאשר משווים תאריכים, זכרו שזמנים גם מושפעים מאזורי זמן ושעון קיץ – DateTimeOffset יכול לעזור פה.

חלופות? תכניתנים יכולים להשתמש ב-TimeSpan כדי לחשב הבדלים ולבצע השוואות, או במחלקת CompareTo של DateTime להשוואות מדוייקות יותר. אלו אומנם פתרונות אפשריים, אך הפונקציה DateTime.Compare() היא הפשוטה והמהירה ביותר לרוב הצרכים.

ראו גם: