我只是想知道是否有办法获得当前时间并将其设置为值。
如果是12:06 AM ..我想得到那个时间并将其设置为currentTime。
实施例
float currentTime = 0;
currentTime = 12.06;
答案 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;