2015-12-30 31 views
0

我正在用C#中的日期进行实验。我写了一个控制台应用程序,其主要方法如下:DateTime DayOfWeek在远期未来几年的日期不正确

static void Main(string[] args) 
{ 
    while (true) 
    { 
     Console.WriteLine(DateTime.Parse(Console.ReadLine()).DayOfWeek); 
    } 
} 

现在这个工作在附近日期(我不认为我在附近美其名曰/遥远的正确)未来和过去一样日期在2016年,2017年,1996年等,但不适用于2999,3000等日期。

这是什么原因?我不认为这是因为闰年,因为2019年工作良好。

而不是用于Y ňķ任我想是因为我写了整整一年:

15/01/3000 

工作输入

31/12/2015 
05/05/2019 

投入没有产生正确的结果

15/01/2099 
17/07/3000 

解析很好。它不会产生正确的输出。就像它应该在星期五返回一样,它将返回星期六等。

+1

你怎么准确地输入那些年份?你能否显示工作输入,但不能正常工作? –

+0

@SonerGönül请参阅编辑。 –

+0

这是无效datye – mybirthname

回答

0

UTC UTC日期将在1-19-2038之后出错。 UTC Date Glitch 2038

+0

你能在01-01-1901之前回去吗? –

+0

是的。尝试1856年2月1日。输出确定。 –

+0

这些输入不会产生'Utc'作为'Kind'。对不起,但这是无关紧要的。 –