我明白這個問題已經以各種形式被覆蓋了很多次,但沒有一個能夠幫助我解決特定的問題。我使用以下方法將輸入數據轉換爲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