c# 获取时间后,年月日不变如果我想设置新的时分秒为某个特定的值,而不是相加,应该怎么做?
时间: 2024-09-28 07:06:00 浏览: 30
在 C# 中,如果你想要获取当前日期的时间部分,并将其设置为特定的值,但保持年月日不变,你可以使用 `DateTime` 类的构造函数或者 `SetHours()`、`SetMinutes()` 和 `SetSeconds()` 方法。这里有一个例子:
```csharp
using System;
class Program {
static void Main() {
// 获取当前日期
DateTime currentDate = DateTime.Now;
// 设置新的小时、分钟和秒(假设我们想将时间设为下午2点45分30秒)
int newHour = 14; // 新的小时数(24小时制)
int newMinute = 45;
int newSecond = 30;
// 创建一个新的 DateTime 对象,只有指定的部分会改变
DateTime specificTime = new DateTime(currentDate.Year, currentDate.Month, currentDate.Day,
newHour, newMinute, newSecond);
Console.WriteLine("Current Date: " + currentDate);
Console.WriteLine("Specific Time: " + specificTime);
}
}
```
在这个示例中,`currentDate.Year`, `currentDate.Month`, 和 `currentDate.Day` 都保持不变,只是设置了新的时分秒。
阅读全文