2010-11-23 62 views

回答

116

使用,可以让你指定的年,月,日,时,分,秒的构造:

var dateNow = DateTime.Now; 
var date = new DateTime(dateNow.Year, dateNow.Month, dateNow.Day, 4, 5, 6); 
+2

这种方法很容易导致对“System.ArgumentOutOfRangeException:年,月和日参数描述一个未表示的日期时间”的时候,天原年存在但不是在更新之一。最简单的情况是闰年。 我建议是这样的: ` VAR NEWYEAR = 2017年; var oldDate = new DateTime(2016,2,29); var newDate = oldDate.AddYears(newYear - oldD.Year); ` 通知newDate不会是2017年2月29日,它不存在,但2017年2月28日来代替。 – Yosoyadri 2017-01-01 20:24:31

12
date = new DateTime(date.year, date.month, date.day, HH, MM, SS); 
19

你不能改变的DateTime对象,这是不可改变的。但是,您可以将其设置为一个新的值,例如:

var newDate = oldDate.Date + new TimeSpan(11, 30, 55); 
12

我不知道你想要什么可以做,但 您可以设定日期/时间,你想在什么许多方式...

您可以通过使用

DateTime myDate = Convert.ToDateTime("2010-12-25 16:58:00"); 

或者如果你有一个现有的datetime结构,比方说2010年12月25日(和任何随机指定2010年12月25日下午4点58分时间),并且您想将其设置为12/25/2010 4:58 PM,您可以这样做:

DateTime myDate = ExistingTime.Date.AddHours(16).AddMinutes(58); 

ExistingTime.Date将在午夜12/25,并且您只需添加小时和分钟即可获得您想要的时间。

相关问题