Parse fixed date strings with an explicit culture and pattern.

parsing Parsing turns text into a date when the expected format is known.

Parsing Dates

input
ParsingDates.cs
Replay: real traced execution (multi-file project)
using System;
using System.Globalization;

class Program
{
    static void Main()
    {
        string input = "2026-09-12";
        DateTime parsed = DateTime.ParseExact(
            input,
            "yyyy-MM-dd",
            CultureInfo.InvariantCulture
        );
        string weekday = parsed.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));

        Console.WriteLine($"input={input}");
        Console.WriteLine($"weekday={weekday}");
    }
}
using System;
using System.Globalization;

class Program
{
    static void Main()
    {
        string input = "2026-10-05";
        DateTime parsed = DateTime.ParseExact(
            input,
            "yyyy-MM-dd",
            CultureInfo.InvariantCulture
        );
        string weekday = parsed.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));

        Console.WriteLine($"input={input}");
        Console.WriteLine($"weekday={weekday}");
    }
}
using System;
using System.Globalization;

class Program
{
    static void Main()
    {
        string input = "2026-12-31";
        DateTime parsed = DateTime.ParseExact(
            input,
            "yyyy-MM-dd",
            CultureInfo.InvariantCulture
        );
        string weekday = parsed.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));

        Console.WriteLine($"input={input}");
        Console.WriteLine($"weekday={weekday}");
    }
}
  1. input ← 2026-09-12, parsed ← 09/12/2026 00:00:00, weekday ← Sat

    5{6    static void Main()7    {8        string input→ 2026-09-12 = "2026-09-12"; //@input="2026-10-05", "2026-12-31"9        DateTime parsed→ 09/12/2026 00:00:00 = DateTime.ParseExact(10            input2026-09-12,11            "yyyy-MM-dd",12            CultureInfo.InvariantCulture13        );14        string weekday→ Sat = parsed09/12/2026 00:00:00.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));1516        Console.WriteLine($"input={input2026-09-12}");17        Console.WriteLine($"weekday={weekdaySat}");18    }
    outputinput=2026-09-12
    weekday=Sat
  1. input ← 2026-10-05, parsed ← 10/05/2026 00:00:00, weekday ← Mon

    5{6    static void Main()7    {8        string input→ 2026-10-05 = "2026-10-05";9        DateTime parsed→ 10/05/2026 00:00:00 = DateTime.ParseExact(10            input2026-10-05,11            "yyyy-MM-dd",12            CultureInfo.InvariantCulture13        );14        string weekday→ Mon = parsed10/05/2026 00:00:00.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));1516        Console.WriteLine($"input={input2026-10-05}");17        Console.WriteLine($"weekday={weekdayMon}");18    }
    outputinput=2026-10-05
    weekday=Mon
  1. input ← 2026-12-31, parsed ← 12/31/2026 00:00:00, weekday ← Thu

    5{6    static void Main()7    {8        string input→ 2026-12-31 = "2026-12-31";9        DateTime parsed→ 12/31/2026 00:00:00 = DateTime.ParseExact(10            input2026-12-31,11            "yyyy-MM-dd",12            CultureInfo.InvariantCulture13        );14        string weekday→ Thu = parsed12/31/2026 00:00:00.ToString("ddd", CultureInfo.GetCultureInfo("en-US"));1516        Console.WriteLine($"input={input2026-12-31}");17        Console.WriteLine($"weekday={weekdayThu}");18    }
    outputinput=2026-12-31
    weekday=Thu