如何将当前时间设置为值

时间:2011-12-05 05:10:09

标签: c#

我只是想知道是否有办法获得当前时间并将其设置为值。

如果是12:06 AM ..我想得到那个时间并将其设置为currentTime。

实施例

float currentTime = 0;
currentTime = 12.06;

9 个答案:

答案 0 :(得分:3)

尝试DateTime类

  DateTime dt = DateTime.Now;

答案 1 :(得分:3)

正如其他人所提到的,DateTime类是理想的,并计算2个日期/时间之间的差异:

DateTime end = DateTime.Now;
DateTime start = new DateTime(2011, 12, 5, 12, 6,0);

double hours = (end - start).TotalHours;

DateTime对象的减法会产生一个TimeSpan对象,您可以使用它来查看小时/分钟等。

答案 2 :(得分:2)

这是你要找的吗?

DateTime currentTime;

currentTime = DateTime.Now;

答案 3 :(得分:2)

好吧,如果你真的像浮动那么试试:

var currentDate = DateTime.Now; 
float currentTime = float.Parse((currentDate.Hour > 12 ? currentDate.Hour -12 :
currentDate.Hour)  + "." + currentDate.Minute);

我不建议将日期或时间与浮点数进行比较。更好的选择是使用时间跨度。

答案 4 :(得分:2)

不要使用花车或琴弦。你可以使用DateTime做各种很酷的事情。

以下是您如何获得有人工作的时间:

var clockIn = new DateTime(2011,12,4,9,0,0);   // December 4th, 9 AM
var clockOut = new DateTime(2011,12,4,17,0,0); // December 4th, 5 PM

var duration = clockOut - clockIn;             // TimeSpan

Console.Write(duration.TotalHours);            // 8

答案 5 :(得分:2)

有些人提到了如何,但作为一个更好的'建议您使用

DateTime currentTime = DateTime.UtcNow

否则,如果您的计时代码在那些日期运行,那么当时钟返回时您会遇到问题。 (加上将UTC时间更改为当地时间比将' 1 am'转换为UTC更容易(因为当时钟返回时会有两个)

答案 6 :(得分:2)

尝试以下方法:

 DateTime StartTime=StartTime value;
 DateTime CurrentTime=DateTime.Now;
 TimeSpan dt = CurrentTime.Subtract(StartTime);

dt中,您将获得一段工作时间。

答案 7 :(得分:2)

您应该使用Timespan实例来获取与时间相关的值,您可以灵活地获取所需的值,例如

TimeSpan ts = DateTime.Now.TimeOfDay;
ts.ToString("hh:mm") // this could be what you are looking for

然后你可以使用ts.TotalHours来获得小时(作为double),否则你可以使用ts.Hours专门构建一个字符串。ts.Minutes它可能被证明是有用的。

答案 8 :(得分:1)

如果您希望两次之间有差异,请执行以下操作:

DateTime dateOne = DateTime.Parse(enteredTime);
DateTime dateTwo = DateTime.Now;

TimeSpan difference = dateOne - dateTwo;