首页 > 解决方案 > 字符串 '10/8/2020' 未被识别为有效的日期时间

问题描述

using System;
                    
public class Program
{
    public static void Main()
    {
        Console.WriteLine(DateTime.ParseExact("10/8/2020","dd/MM/yyyy", null));
    }
}

返回错误

Run-time exception (line 7): String was not recognized as a valid DateTime.

Stack Trace:

[System.FormatException: String was not recognized as a valid DateTime.]
   at System.DateTimeParse.ParseExact(String s, String format, DateTimeFormatInfo dtfi, DateTimeStyles style)
   at System.DateTime.ParseExact(String s, String format, IFormatProvider provider)
   at Program.Main() :line 7

不知道为什么会出现这个问题。有人可以阐明一下吗?

标签: c#datetimeparsing

解决方案


在解析时使用dd/M/yyyy格式或在月份前添加 0,使其成为两位数

Console.WriteLine(DateTime.ParseExact("10/08/2020","dd/MM/yyyy", null));

或者

Console.WriteLine(DateTime.ParseExact("10/8/2020","dd/M/yyyy", null));


推荐阅读