如何转换系统.到系统的日期时间.明确时间间隔

本文关键字:时间 系统 日期 何转换 转换 | 更新日期: 2023-09-27 18:07:24

我想显式地将Date Time时间转换为Time Span格式时间。因为我必须将时间从DateTime更改为时间跨度在我的提醒应用程序

如何转换系统.到系统的日期时间.明确时间间隔

TimeSpan一般表示两个DateTime的时间差。因此,您需要为差异建立一个基线日期。

你可以尝试使用

TimeSpan ts = new TimeSpan(DateTime.Now.Ticks);

,但上面将使用12:00:00 midnight, January 1, 0001

的基线时间

试图通过猜测你的问题来回答

假设你有一个事件在你的应用程序创建15th June 2014

DateTime eventDate = new DateTime(2014, 6, 6);
// now to show the timespan you can use
TimeSpan ts = eventDate - DateTime.Now.Date;
// time left to event
Console.WriteLine("{0} days, {1} hours, {2} minutes", ts.TotalDays, ts.Hours, ts.Minutes);

这个操作没有意义,所以你不能这么做。任何强制转换尝试都将失败。

这是有道理的,当你想到它时,"May 21, 2014 4:00 PM"作为一个时间跨度意味着什么?时间跨度是像"4小时10分5秒"这样的东西,显然不是日期或时间。

如果你减去两个DateTime对象,你将得到一个TimeSpan,但除此之外,这是不可能的。