C#-DateTime.从字符串进行分析不起作用

本文关键字:不起作用 字符串 C#-DateTime | 更新日期: 2023-09-27 18:05:58

我得到了一个字符串格式的DateTime:

"05/30/2014 12:00:00"

我想通过以下操作从这个字符串创建一个DateTime对象:

DateTime startDate = DateTime.Parse(startDate);

然而,我有一个错误,说这个方法有一些无效的论点:

Error 1 - The best overloaded method match for 'System.DateTime.Parse(string)' has some invalid arguments

当我阅读文档时,字符串参数绝对是一个很好的参数。我在做什么?

C#-DateTime.从字符串进行分析不起作用

使用DateTime.ParseExact并传递日期字符串中的格式。当前区域性可能具有日期形式,其中日期在月份之前,如dd/mm/yy。

您正在将为DateTime声明的相同变量传递给ParseExact方法。更改DateTime对象的名称。

DateTime dtStartDate = DateTime.ParseExact(startDate, "MM/dd/yyyy HH:mm:ss", CultureInfo.InvariantCulture);

您可以阅读自定义日期和时间格式字符串中的文章,以更好地理解如何声明解析日期字符串的格式。

DateTime startDate = DateTime.ParseExact(strDate, "G", CultureInfo.InvariantCulture);

你可以在这里找到更多信息。

在初始化变量之前,您似乎正在传递要解析的变量。

所以你可以有:

DateTime startDate = DateTime.Parse("05/30/2014 12:00:00");
Console.WriteLine(startDate);  

或者,你可以有:

String dateToParse = "05/30/2014 12:00:00";
DateTime startDate = DateTime.Parse(dateToParse);
Console.WriteLine(startDate);  

将日期存储在字符串变量中,然后使用以下内容:

DateTime.Parse(STRINGVARIABLE);
//Which means following
//DateTime.Parse("05/30/2014 12:00:00");

在代码中,您正在尝试将该格式应用于DateTime类型的变量。或者,如果您想将格式直接应用于DateTime变量,那么您可以简单地编写以下内容:

DateTime.Parse("05/30/2014 12:00:00").ToString("dd MMM yyyy");