如何在c#中使用逗号分割数字字符串

时间:2018-05-22 16:35:38

标签: c# datetime c#-4.0

如何通过使用c#代码添加逗号将数字字符串拆分为日期格式。 例如:

输入:

Inputstring=20130511

输出:

Splitstring=2013,05,11
Year=2013
Month=05
Date=11
dayname=saturday
quater=2

2 个答案:

答案 0 :(得分:1)

您可以编写一个小方法,它接受一个字符串并从您的输入字符串返回DateTime。您可以使用TryParseExact并传递"yyyyMMdd"作为format string(表示4位数年份,然后是2位数月份,后面是2位数日期)。如果输入字符串有任何问题,它将返回default(DateTime)

private static DateTime GetDate(string input)
{
    DateTime result;
    DateTime.TryParseExact(input, "yyyyMMdd", CultureInfo.CurrentCulture, 
        DateTimeStyles.None, out result);
    return result;
}

然后您可以调用此方法并输出结果,如下所示:

private static void Main()
{
    var input = "20130511";
    var result = GetDate(input);

    Console.WriteLine($"Input: {input}");
    Console.WriteLine($"Year: {result.Year}");
    Console.WriteLine($"Month: {result.Month}");
    Console.WriteLine($"Date: {result.Day}");
    Console.WriteLine($"Dayname: {result.DayOfWeek}");
    Console.WriteLine($"Quarter: {(result.Month - 1) / 4 + 1}");

    GetKeyFromUser("\nDone! Press any key to exit...");
}

<强>输出

enter image description here

答案 1 :(得分:0)

尝试除以10的倍数。

例如:date = yyyymmdd 如果您将日期除以100,您将获得dayTemp = yyyymm,以便获得您的日期编号:

day = date - (dayTemp * 100)

同样获得月份和年份。你将不得不改变10的倍数。