fer*_*ndo 1 c# datetime compare
我是C#的新手,我正在尝试编写一个简单的控制台应用程序.我有两个日期时间,但我无法得到消息Same,它继续打印Different.
我还在控制台中打印两个日期时间以了解它们是否不同,但即使系统时间相同,它也不满足条件.
static void Main(string[] args)
{
while (true)
{
Thread.Sleep(1000);
DateTime dt1 = DateTime.Now;
DateTime dt2 = DateTime.Parse("06:30:00 AM");
if (TimeSpan.Compare(dt1.TimeOfDay, dt2.TimeOfDay) == 0)
{
Console.WriteLine("Same");
}
else
{
Console.WriteLine("Different");
}
Console.WriteLine(dt1);
Console.WriteLine(dt2);
}
}
Run Code Online (Sandbox Code Playgroud)
DateTime分辨率低至刻度,即使默认情况下它们仅在大多数文化中打印到秒.
如果你打印dt1.ToString("o")相同的dt2,你会看到,即使它们等于第二个,它们也可能在亚秒数量上变化.这就解释了为什么您当前的代码可以打印"不同"但仍然为接下来的两行打印相同的值.