这类似于此链接:“将当前时间添加到 DateTime?” 但我的完全不同。
我想知道如何将您的时间跨度(例如:上午 10:00)添加到您的 Date.Now(例如 2013 年 7 月 3 日)?我试过了,DateTime.Now.Add(timeSpan)
但它不起作用。
有什么建议么?
这类似于此链接:“将当前时间添加到 DateTime?” 但我的完全不同。
我想知道如何将您的时间跨度(例如:上午 10:00)添加到您的 Date.Now(例如 2013 年 7 月 3 日)?我试过了,DateTime.Now.Add(timeSpan)
但它不起作用。
有什么建议么?
DateTime 是不可变的,因此您现有的变量不会改变。
var myDateTime = DateTime.Now.Add(timeSpan);
您可以使用+
运算符:
TimeSpan ts = TimeSpan.FromHours(10);
DateTime result = DateTime.Now + ts;
但是,DateTime.Add
也应该工作。我假设您的“TimeSpan”是一个字符串。
由于您的时间跨度包含 AM/PM 指示符,您可以将其解析为DateTime
并将TimeOfDay
-TimeSpan 添加到DateTime.Now
:
DateTime time = DateTime.ParseExact("10:00AM", "hh:mmtt", CultureInfo.InvariantCulture);
DateTime result = DateTime.Now + time.TimeOfDay;
编辑:如果你想添加TimeSpan
到午夜使用DateTime.Today
而不是DateTime.Now
.