日期时间Parseexact

时间:2013-04-03 07:44:53

标签: c# parsing datetime datetime-format

我正在尝试将日期格式从"4/01/2013 0:00:00"更改为"01/4/2013 00:00:00"

DateTime.ParseExact(fromDate.ToString(), "m/dd/yy HH:mm:ss", CultureInfo.InvariantCulture).ToString("dd/mm/yy HH:mm:ss");

但是我得到了

“字符串未被识别为有效的DateTime。”

1 个答案:

答案 0 :(得分:5)

您的年份部分为yy,但应该是yyyy,因为您使用的是4位数年份。 此外,小写m代表分钟,而不是几个月 - 如果是大写M。你的代码应该是这样的:

string fromDate = "4/01/2013 0:00:00";
DateTime dt = DateTime.ParseExact(fromDate, "M/dd/yyyy H:mm:ss", CultureInfo.InvariantCulture);
string formattedDate = dt.ToString("dd/M/yyyy HH:mm:ss");

您正在执行fromDate.ToString(),如果fromDate已经是一个字符串,您不必调用ToString,如果它是日期类型,那么您不必解析它,你可以直接格式化它。