1

我想转换dd/MM/yyyyMM/dd/yyyy.

我的代码:

string g = "20-1-1999";
DateTime dt = DateTime.ParseExact(g, "dd/MM/yyyy", CultureInfo.InvariantCulture);

错误信息:

字符串未被识别为有效的日期时间。

4

2 回答 2

3

您必须M在格式字符串中给出一个月的单曲。您可以在此处阅读有关格式说明符 MM 的更多信息,在此处阅读M。您还需要使用作为分隔符而不是-/

DateTime.ParseExact(g, "dd-M-yyyy", CultureInfo.InvariantCulture);

如果您期望一天为单位数,您也会d为一天提供单次。

DateTime.ParseExact(g, "d-M-yyyy", CultureInfo.InvariantCulture);

“MM”自定义格式说明符

“MM”自定义格式说明符将月份表示为从 01 到 12 的数字(或者对于有 13 个月的日历,从 1 到 13)。一位数月份的格式为前导零,MSDN

“M”自定义格式说明符

“M”自定义格式说明符将月份表示为从 1 到 12 的数字(或者对于有 13 个月的日历,从 1 到 13)。一位数月份的格式不带前导零,MSDN

于 2013-10-13T06:18:04.210 回答
2

你的格式应该是dd-M-yyyy

DateTime dt = DateTime.ParseExact(g, "dd-M-yyyy", CultureInfo.InvariantCulture);

var result = dt.ToString("MM/dd/yyyy");
于 2013-10-13T06:21:37.540 回答