DateTime.Parse行为不一致

时间:2014-07-02 06:12:38

标签: c# datetime

我对Convert.ToDateTime行为有一个小问题:

        DateTime dt = System.Convert.ToDateTime("25JAN27");
        String dateStr = dt.ToString();
        //output: 25/01/2027 00:00:00

        DateTime dt2 = System.Convert.ToDateTime("20SEP33");
        String dateStr2 = dt2.ToString();
        //output: 20/09/1933 00:00:00

为什么27变成2027年,33变成1933年?

感谢

1 个答案:

答案 0 :(得分:1)

请参阅此帖中接受的答案:DateTime.TryParse century control C#

此行为基于您正在使用的CultureInfo对象的Calendar属性的TwoDigitYearMax属性。

CultureInfo.CurrentCulture.Calendar.TwoDigitYearMax