Ear*_*rlz 10 .net c# floating-point datetime unix-timestamp
我需要将DateTime转换为Unix时间戳.所以我用谷歌搜索它寻找一些示例代码
在我看到的几乎所有结果中,它们都double用作这种函数的返回值,即使在显式使用floor它将其转换为整数时也是如此.Unix时间戳总是整数.那么使用long或者int代替双重问题是什么?
static double ConvertToUnixTimestamp(DateTime date)
{
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, 0);
TimeSpan diff = date - origin;
return Math.Floor(diff.TotalSeconds);
}
Run Code Online (Sandbox Code Playgroud)
通常,我会使用 unsigned long 来实现它,而不是要求用户向上或向下舍入并转换为 int 或 long。有人可能想要 double 的原因之一是是否使用了类似于 timeval 的结构,例如在gettimeofday中。它允许亚秒级精度...
| 归档时间: |
|
| 查看次数: |
6590 次 |
| 最近记录: |