从float转换为TimeSpan

时间:2017-07-30 16:43:39

标签: c# .net datetime

我需要将一个浮点数转换为datetime。例如:

float x=70;

DateTime应该返回1分10秒。 (1:30)

1 个答案:

答案 0 :(得分:6)

您可以使用TimeSpan及时表示浮动。请注意,TimeSpan不接受float参数,因此您需要转换为double类型。

float x = 70;
TimeSpan span = TimeSpan.FromSeconds((double)(new decimal(x)));

然后使用引用DateTimeTimeSpan“转换为DateTime。在此示例中,我们使用的是epoch

DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
DateTime date = epoch + span;

日期代表来自float的秒数(epoch)。

注意epochUnix time)可以是任意日期(根据需要进行更改)

演示http://rextester.com/QCK29438