-2

I have a

Start_Date = 1988-04-01 End_Date = 2017-04-30

how can I calcuate the difference between two days in a specific year? such as 2000 will have 365 days, 2017 will have 120 days.

how can I do that?

kaihong
  • 3
  • 5
  • 1
    `(End_Date - Start_Date).Days` –  Jul 20 '17 at 03:12
  • 1
    Have you heard of Google? It helps you find things. A Google search (using your question) of "c# how can I calcuate the difference between two days in a specific year" returns [this](https://stackoverflow.com/questions/1607336/calculate-difference-between-two-dates-number-of-days) as the first link. And, surprise surprise, it exactly answers your question. – ProgrammingLlama Jul 20 '17 at 03:30

2 Answers2

1
// Define two dates.
DateTime date1 = new DateTime(2010, 1, 1, 8, 0, 15);
DateTime date2 = new DateTime(2010, 8, 18, 13, 30, 30);
// Calculate the interval between the two dates.
TimeSpan interval = date2 - date1;
Console.WriteLine("{0} - {1} = {2}", date2, date1, interval.ToString());
// Display individual properties of the resulting TimeSpan object.
Console.WriteLine("   {0,-35} {1,20}", "Value of Days Component:", interval.Days);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Days:", interval.TotalDays);
Console.WriteLine("   {0,-35} {1,20}", "Value of Hours Component:", interval.Hours);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Hours:", interval.TotalHours);
Console.WriteLine("   {0,-35} {1,20}", "Value of Minutes Component:", interval.Minutes);
Console.WriteLine("   {0,-35} {1,20}", "Total Number of Minutes:", interval.TotalMinutes);
Console.WriteLine("   {0,-35} {1,20:N0}", "Value of Seconds Component:", interval.Seconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Total Number of Seconds:", interval.TotalSeconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Value of Milliseconds Component:", interval.Milliseconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Total Number of Milliseconds:", interval.TotalMilliseconds);
Console.WriteLine("   {0,-35} {1,20:N0}", "Ticks:", interval.Ticks);

// the example displays the following output:
//       8/18/2010 1:30:30 PM - 1/1/2010 8:00:15 AM = 229.05:30:15
//          Value of Days Component:                             229
//          Total Number of Days:                   229.229340277778
//          Value of Hours Component:                              5
//          Total Number of Hours:                  5501.50416666667
//          Value of Minutes Component:                           30
//          Total Number of Minutes:                       330090.25
//          Value of Seconds Component:                           15
//          Total Number of Seconds:                      19,805,415
//          Value of Milliseconds Component:                       0
//          Total Number of Milliseconds:             19,805,415,000
//          Ticks:                               198,054,150,000,000
David
  • 15,894
  • 22
  • 55
  • 66
0
static void Main(string[] args)
{
    DateTime startDate = new DateTime(1988, 4, 1);
    DateTime endDate = new DateTime(2017, 4, 30);
    TimeSpan diff = endDate - startDate;
    Console.WriteLine("Difference in days between two days: " + diff.TotalDays);

    int year = 2000;
    int daysInFeb = DateTime.DaysInMonth(year, 2);
    int daysInYear = DateTime.IsLeapYear(year) ? 366 : 365;
    Console.WriteLine("Days in February " + year + ": " + daysInFeb);
    Console.WriteLine("Days in Year " + year + ": " + daysInYear);

    Console.ReadKey();

    // Outputs:

    // Difference in days between two days: 10621
    // Days in February 2000: 29
    // Days in Year 2000: 366
}
opewix
  • 4,993
  • 1
  • 20
  • 42