将时间转换为双倍

时间:2016-04-29 11:44:08

标签: c# winforms datetime variables

如何在程序中获取“DateTime”函数并将其转换为double变量?我的目标是做一些时间操作,比如

(想象一下这个变量t1是一个已经写在标签上的静态“时间”) (现在假设t2是计算机的DateTime)

t1 = 03:40:11
t2 = DateTime

t3 = t2 (that would be DateTime converted) + t1

如何将此DateTime转换为double,以便我可以执行此操作?

4 个答案:

答案 0 :(得分:2)

您无需将其转换为double。您可以直接在DateTime对象上执行算术运算:

var date = new DateTime(1944, 6, 6, 1, 10, 0);
var time = TimeSpan.Parse("03:40:11");

var newDate = date.Add(time);

Console.WriteLine(newDate); // Prints "06/06/1944 04:50:11"

答案 1 :(得分:0)

原始TimeSpans可以进行多项操作。但是,您可以使用TotalSecondsTotalHours等权属,double。之后,您可以TimeSpan返回TimeSpan.FromMinutes(m1 + m2 * 7.5)世界。

答案 2 :(得分:0)

没有添加两个DateTime的运算符。由于DateTime是绝对时间值,因此添加两个绝对时间值会更有意义。

但你可以这样做:

DateTime dt = DateTime.Now;
TimeSpan ts = TimeSpan.Parse("12:00:00");
DateTime dt1 = dt + ts;             // Adding a TimeSpan to a DateTime
TimeSpan ts1 = DateTime.Now - dt;   // Substracting two DateTimes

答案 3 :(得分:0)

我做过像RB这样的工作,顺便说一句,我发现我的程序缺少什么来做这种补充。 我忘了调用一个变量“DateTime”,它将是“DateTime.Now”,我完成了它:

  • dateTime =我的变量,它从计算机中获取时间
  • timeSpan - 我的变量,其静态时间数

    var finalTime = dateTime.Add(timeSpan).
    

谢谢你们的帮助!