Вычислить дату из секунд, начиная с 01-01-0001 нашей эры.

Мне нужен код .NET C#\VB.NET для следующей проблемы. Я хочу рассчитать дату из секунд, например, у меня есть 1304393880 секунд, и это представляет 2011-05-06 и 09:00 часов. Таким образом, эти секунды продолжают обновляться ежедневно. так что на следующий день у меня будет 1304393880 + 24*60*60 = 1304480280. теперь, когда я вычисляю 1304480280 секунд на сегодняшний день в 9 утра, это должно дать мне 2011-05-07-0900 Пожалуйста, помогите


person sandeep    schedule 09.05.2011    source источник
comment
вам нужен псевдокод или вы работаете на определенном языке   -  person Grady Player    schedule 10.05.2011
comment
Знаете ли вы разницу между юлианским и григорианским календарями?   -  person Toon Krijthe    schedule 10.05.2011
comment
конечно, но скажи нам, на каком языке ты это делаешь?   -  person Shaunak    schedule 10.05.2011
comment
извини, приятель, но я должен спросить, почему?   -  person Bastardo    schedule 10.05.2011
comment
Я хочу загрузить данные с URL google.com/finance/, поэтому в данных на 8-й строке у меня есть что-то вроде этого a1304393880 a представляет начальную, а остальная строка представляет дату. Так что я хочу получить эту дату   -  person sandeep    schedule 10.05.2011
comment
@sandeep Вы уверены, что это с 01-01-0001 нашей эры, потому что на самом деле это не так.   -  person Bastardo    schedule 10.05.2011
comment
Это выглядит как секунды с 1 января 1970 года (время Unix). Не AD 01-01-0001. В этом случае это возможный дубликат Синтаксический анализ времени unix в C#   -  person Martin Smith    schedule 10.05.2011


Ответы (1)


На любом языке, на котором вы работаете, есть какая-то эпоха (дата/время, представленные 0 секундами). Просто рассчитайте количество секунд между этой эпохой для конкретного языка и 01-01-0001 и при необходимости добавьте эту константу к своим вычислениям.

Вот расчет из WolframAlpha:

http://www.wolframalpha.com/input/?i=seconds+since+0%3A00%2C+01-01-0001

person jefflunt    schedule 09.05.2011