C#计算距离指定时间跨度还有多长时间

狄龙

因此,我试图计算直到特定时间需要多长时间。但我似乎无法让它工作。

一个例子是说我试图计算从现在到早上 06:00:00 需要多长时间所以说现在是晚上 10:30 我想看看到第二天早上 6 点还有多长时间。所以正确的答案是 7 小时 30 分钟。或者另一个例子说现在是晚上 8 点 30 分,我想看看到晚上 10 点还有多长时间。如果有人可以为我提供一些代码来帮助它,将不胜感激!

Lei Yang

首先比较时间跨度,然后根据需要添加一天。

        static TimeSpan TimeDiff(TimeSpan nowSpan, TimeSpan ts)
        {
            if (nowSpan > ts)
            {
                ts = ts.Add(TimeSpan.FromDays(1));
            }
            return ts - nowSpan;
        }

        static void Main(string[] args)
        {
            Console.WriteLine(TimeDiff(new TimeSpan(22, 30, 0), new TimeSpan(6, 0, 0)));
            //  07:30:00
            Console.WriteLine(TimeDiff(new TimeSpan(20, 30, 0), new TimeSpan(22, 0, 0)));
            //  01:30:00
            // You may want use DateTime.Now.TimeOfDay as the first parameter
            Console.ReadKey();
        }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章