Program.
cs 22/02/2025 15:20
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace DateTimeCSharpSample
{
class DateTimeClass
{
static void Main(string[] args)
{
DateTimeClass dateTimeSample = new DateTimeClass();
// dateTimeSample.CreateDateTime();
// dateTimeSample.GetDateTimeProperties();
// dateTimeSample.AddSubtractDateTimeComponents();
// dateTimeSample.FindADayAfterDays(2);
// dateTimeSample.SubtractOnly();
// dateTimeSample.GetDaysInAMonth();
// Console.WriteLine(dateTimeSample.GetDaysInAYear(2002));
//dateTimeSample.GetAllDateTimeFormats();
// dateTimeSample.CompareTwoStrings();
// dateTimeSample.FormatDateTime();
// dateTimeSample.FormatUsingToString();
// dateTimeSample.FormatUsingToString();
// dateTimeSample.LeapYearDayLightSaving();
// dateTimeSample.ConcertStringToDateTime();
dateTimeSample.ConvertDateTimeToTypes();
Console.ReadKey();
}
private void ConvertDateTimeToTypes()
{
DateTime dob = new DateTime(2002, 10, 22);
Console.WriteLine("ToString: " + dob.ToString());
Console.WriteLine("ToBinary: " + dob.ToBinary());
Console.WriteLine("ToFileTime: " + dob.ToFileTime());
Console.WriteLine("ToLocalTime: " + dob.ToLocalTime());
Console.WriteLine("ToLongDateString: " + dob.ToLongDateString());
Console.WriteLine("ToLongTimeString: " + dob.ToLongTimeString());
Console.WriteLine("ToOADate: " + dob.ToOADate());
Console.WriteLine("ToShortDateString: " + dob.ToShortDateString());
Console.WriteLine("ToShortTimeString: " + dob.ToShortTimeString());
Page 1 of 6
Program.cs 22/02/2025 15:20
Console.WriteLine("ToUniversalTime: " + dob.ToUniversalTime());
}
private void ConcertStringToDateTime()
{
string dt = "2010-10-04T20:12:45-5:00";
DateTime newDt = DateTime.Parse(dt);
Console.WriteLine(newDt.ToString());
}
private void LeapYearDayLightSaving()
{
DateTime dob = new DateTime(2002, 10, 22);
Console.WriteLine(dob.IsDaylightSavingTime());
Console.WriteLine(DateTime.IsLeapYear(dob.Year));
}
private void FormatUsingToString()
{
DateTime dob = new DateTime(2002, 10, 22);
Console.WriteLine("d: "+ dob.ToString("d"));
Console.WriteLine("D: "+ dob.ToString("D"));
Console.WriteLine("f: "+ dob.ToString("f"));
Console.WriteLine("F: "+ dob.ToString("F"));
Console.WriteLine("g: " + dob.ToString("g"));
Console.WriteLine("G: " + dob.ToString("G"));
Console.WriteLine("m: " + dob.ToString("m"));
Console.WriteLine("M: " + dob.ToString("M"));
Console.WriteLine("o: " + dob.ToString("o"));
Console.WriteLine("O: " + dob.ToString("O"));
Console.WriteLine("r: " + dob.ToString("r"));
Console.WriteLine("R: " + dob.ToString("R"));
Console.WriteLine("s: " + dob.ToString("s"));
Console.WriteLine("t: " + dob.ToString("t"));
Console.WriteLine("T: " + dob.ToString("T"));
Console.WriteLine("u: " + dob.ToString("u"));
Console.WriteLine("U: " + dob.ToString("U"));
Console.WriteLine("y: " + dob.ToString("y"));
Console.WriteLine("Y: " + dob.ToString("Y"));
}
private void FormatDateTime()
{
DateTime dob = new DateTime(2002, 10, 22);
// DateTime Formats: d, D, f, F, g, G, m, o, r, s, t, T, u, U,
Console.WriteLine("----------------");
Console.WriteLine("d Formats");
Console.WriteLine("----------------");
string[] dateFormats = dob.GetDateTimeFormats('d');
foreach (string format in dateFormats)
Console.WriteLine(format);
Console.WriteLine("----------------");
Console.WriteLine("D Formats");
Console.WriteLine("----------------");
dateFormats = dob.GetDateTimeFormats('D');
Page 2 of 6
Program.cs 22/02/2025 15:20
foreach (string format in dateFormats)
Console.WriteLine(format);
Console.WriteLine("----------------");
Console.WriteLine("f Formats");
Console.WriteLine("----------------");
dateFormats = dob.GetDateTimeFormats('f');
foreach (string format in dateFormats)
Console.WriteLine(format);
Console.WriteLine("----------------");
Console.WriteLine("F Formats");
Console.WriteLine("----------------");
dateFormats = dob.GetDateTimeFormats('F');
foreach (string format in dateFormats)
Console.WriteLine(format);
private void GetAllDateTimeFormats()
{
DateTime dob = new DateTime(2002, 10, 22);
string[] dateFormats = dob.GetDateTimeFormats();
foreach (string format in dateFormats)
Console.WriteLine(format);
}
private void CompareTwoStrings()
{
DateTime firstDate = new DateTime(2002, 10, 22);
DateTime secondDate = new DateTime(2009, 8, 11);
int result = DateTime.Compare(firstDate, secondDate);
if (result < 0)
Console.WriteLine("First date is earlier");
else if (result == 0)
Console.WriteLine("Both dates are same");
else
Console.WriteLine("First date is later");
int compareResult = firstDate.CompareTo(secondDate);
if (compareResult < 0)
Console.WriteLine("First date is earlier");
else if (compareResult == 0)
Console.WriteLine("Both dates are same");
else
Console.WriteLine("First date is later");
}
private void GetDaysInAMonth()
{
int days = DateTime.DaysInMonth(2002, 2);
Console.WriteLine(days);
}
/// <summary>
/// Gets number of days in a year
/// </summary>
Page 3 of 6
Program.cs 22/02/2025 15:20
/// <param name="year"></param>
/// <returns></returns>
private int GetDaysInAYear(int year)
{
int days = 0;
for (int i = 1; i <= 12; i++)
{
days += DateTime.DaysInMonth(year, i);
}
return days;
}
private void CreateDateTime()
{
// Create a DateTime from date and time
DateTime dob = new DateTime(1974, 7, 10, 7, 10, 24);
// Create a DateTime from a String
string dateString = "7/10/1974 7:10:24 AM";
DateTime dateFromString =
DateTime.Parse(dateString,
System.Globalization.CultureInfo.InvariantCulture);
Console.WriteLine(dateFromString.ToString());
// Empty DateTime
DateTime emptyDateTime = new DateTime();
// Just date
DateTime justDate = new DateTime(2002, 10, 18);
// DateTime from Ticks
DateTime justTime = new DateTime(1000000);
// DateTime with localization
DateTime dateTimeWithKind = new DateTime(1974, 7, 10, 7, 10, 24,
DateTimeKind.Local);
// DateTime with date, time and milliseconds
DateTime dateTimeWithMilliseconds = new DateTime(2010, 12, 15, 5, 30, 45, 100);
}
private void AddSubtractDateTimeComponents()
{
DateTime aDay = DateTime.Now;
TimeSpan aMonth = new System.TimeSpan(30, 0, 0, 0);
DateTime aDayAfterAMonth = aDay.Add(aMonth);
DateTime aDayBeforeAMonth = aDay.Subtract(aMonth);
Console.WriteLine("{0:dddd}", aDayAfterAMonth);
Console.WriteLine("{0:dddd}", aDayBeforeAMonth);
// Add Years and Days
aDay.AddYears(2);
aDay.AddDays(12);
// Add Hours, Minutes, Seconds, Milliseconds, and Ticks
aDay.AddHours(4.25);
aDay.AddMinutes(15);
aDay.AddSeconds(45);
aDay.AddMilliseconds(200);
Page 4 of 6
Program.cs 22/02/2025 15:20
aDay.AddTicks(5000);
}
private void SubtractOnly()
{
DateTime dob = new DateTime(2000, 10, 20, 12, 15, 45);
DateTime subDate = new DateTime(2000, 2, 6, 13, 5, 15);
// TimeSpan with 10 days, 2 hrs, 30 mins, 45 seconds, and 100 milliseconds
TimeSpan ts = new TimeSpan(10, 2, 30, 45, 100);
// Subtract a DateTime
TimeSpan diff1 = dob.Subtract(subDate);
Console.WriteLine(diff1.ToString());
// Subtract a TimeSpan
DateTime diff2 = dob.Subtract(ts);
Console.WriteLine(diff2.ToString());
// Subtract 10 Days
DateTime daysSubtracted = new DateTime(dob.Year, dob.Month, dob.Day - 10);
Console.WriteLine(daysSubtracted.ToString());
// Subtract hours, minutes, and seconds
DateTime hms = new DateTime(dob.Year, dob.Month, dob.Day, dob.Hour - 1,
dob.Minute - 15, dob.Second - 15);
Console.WriteLine(hms.ToString());
}
private void FindADayAfterDays(int days)
{
DateTime aDay = DateTime.Now;
TimeSpan week = new System.TimeSpan(days, 0, 0, 0);
DateTime aDayAfterWeek = aDay.Add(week);
Console.WriteLine("{0:dddd}", aDayAfterWeek);
}
private void GetDateTimeProperties()
{
DateTime dob = new DateTime(1974, 7, 10, 7, 10, 24);
Console.WriteLine("Day:{0}", dob.Day);
Console.WriteLine("Month:{0}", dob.Month);
Console.WriteLine("Year:{0}", dob.Year);
Console.WriteLine("Hour:{0}", dob.Hour);
Console.WriteLine("Minute:{0}", dob.Minute);
Console.WriteLine("Second:{0}", dob.Second);
Console.WriteLine("Millisecond:{0}", dob.Millisecond);
Console.WriteLine("Day of Week:{0}", dob.DayOfWeek);
Console.WriteLine("Day of Year: {0}", dob.DayOfYear);
Console.WriteLine("Time of Day:{0}", dob.TimeOfDay);
Console.WriteLine("Tick:{0}", dob.Ticks);
Console.WriteLine("Kind:{0}", dob.Kind);
}
Page 5 of 6
Program.cs 22/02/2025 15:20
private void GetCurrentDateTime()
{
// Get current DateTime
DateTime nowDateTime = DateTime.Now;
Console.WriteLine("Now DateTime: " + nowDateTime.ToString());
Console.WriteLine("Now Date: " + nowDateTime.ToShortDateString());
Console.WriteLine("Now Time: " + nowDateTime.ToShortTimeString());
DateTime utcNowDateTime = DateTime.UtcNow;
Console.WriteLine("UTC Now DateTime: " + utcNowDateTime.ToString());
Console.WriteLine("UTC Now Date: " + utcNowDateTime.ToShortDateString());
Console.WriteLine("UTC Now Time: " + utcNowDateTime.ToShortTimeString());
// Today gives date only. Time is always 12:00:00
DateTime todayDateTime = DateTime.Today;
Console.WriteLine(todayDateTime.ToString());
}
/// <summary>
/// Gets age of a person
/// </summary>
private void GetYearsDifference()
{
DateTime dob = new DateTime(1974, 07, 10);
DateTime today = DateTime.Now;
int age = today.Year - dob.Year;
Console.WriteLine(age);
}
}
}
Page 6 of 6