我有一个包含数据的日期-时间变量DateTime d
。
我有这样的字符串:
11:00 - 12:00
我想从d
变量中获取日期,然后从字符串中添加小时和分钟。
我做到了:
string newStringDate = d.ToString("yyyy-mm-dd") + " "+hourValue.Split('-')[0];
DateTime dd = DateTime.Parse(newStringDate);
我得到的解释是,字符串不能转换到目前为止。
我调试了代码,可以看到newStrinDate
=2014-01-25 11:00
请问我做错了什么?
应该是这样的
string newStringDate = d.ToString(@"yyyy-MM-dd") + " " + hourValue.Split('-')[0].Trim();
DateTime dd = DateTime.ParseExact(newStringDate, @"yyyy-MM-dd HH:mm", null);
您可以做得更好(无需将原始日期转换为字符串):
DateTime dd = d.Date + DateTime.ParseExact(hourValue.Split('-')[0].Trim(), @"HH:mm", null).TimeOfDay;