转换时使用c#获取错误的datetime转换

时间:2017-04-25 08:24:01

标签: c# datetime

string FromDate;
string objFromDate="04/18/2017";

FromDate = DateTime.ParseExact(objFromDate, "dd/MM/yyyy", 
           CultureInfo.InvariantCulture).ToString("MM/dd/yyyy", 
           CultureInfo.InvariantCulture);

这里我将dd / MM / yyyy转换为MM / dd / yyyy,但是我觉得字符串未被识别为有效的日期时间。任何人都可以帮助我如何解决这个问题?

非常感谢。

2 个答案:

答案 0 :(得分:4)

因为当预期的格式为04/18/2017时您已经过dd/MM/yyyy,并且显然没有数字18的月份。请尝试设置objFromDate = "18/04/2017"并查看是否有帮助

答案 1 :(得分:2)

您的日期04/18/2017已采用MM/dd/yyyy格式。正如名称ParseExact所示,编译器会尝试以您提供的相同完全格式解析您的日期。因此例外。

我猜你想要

FromDate = DateTime.ParseExact(objFromDate, "MM/dd/yyyy", CultureInfo.InvariantCulture)
                   .ToString("dd/MM/yyyy", CultureInfo.InvariantCulture);

enter image description here