我明白这个问题已经以各种形式被覆盖了很多次,但没有一个能够帮助我解决特定的问题。我使用以下方法将输入数据转换为C#DateTime
变量。麻烦的是,发送数据的公司声称我错误地将其转换,因为时间比我的系统晚了一个小时。我会认为这与英国夏令时有关,但是在我的结尾或者在他们的最后,这是问题,因为我认为下面的方法会考虑英国夏令时,因为我使用的是ToLocalTime
?任何帮助将被感激地接受。C#Unix时间戳到DateTime
private DateTime ConvertTimeStamp(double t)
{
return new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc)
.AddMilliseconds(t)
.ToLocalTime();
}
好点mjwills - 不知道为什么我没有注意到之前。我将编辑上面的代码,因为它会使读起来更容易。 – user470249
不幸的是,我还没有得到他们的原始数据的例子,所以可能没有太大的帮助,但他们声称他们正在发送以下日期时间; 18/07/2017 16:28:09 - 并且这出现在我的系统中(使用上述方法将输入的时间戳转换成); 18/07/2017 15:28:09 – user470249
您可以请他们提供一些样本数据供您在测试中使用吗?即他们给你一些数字和他们应该代表的日期时间,然后你可以使用它们进行正确的测试。我无法想象他们会不愿意这么做...... – Chris