Я работаю с АТС для вызовов VoIP. Один аспект АТС - то, что можно принять решение получить пакеты CDR. Те пакеты имеют 2 метки времени: "UTC" и "локальный", но оба, кажется, всегда то же.
Вот пример метки времени: "1268927156".
На первый взгляд, кажется, нет никакой логики в нем. Таким образом, я пытался преобразовать его несколько путей, но без хорошего результата. То значение должно обеспечить время около 11:00 (+1GMT) сегодня.
Вещи я попробовал:
и некоторые другие я не могу помнить прямо сейчас.
Я пропускаю что-то глупое здесь?
Заранее спасибо
Это похоже на Unix время.
1268927156 = Thu, 18 Mar 2010 15:45:56 GMT
И пример кода:
DateTime startDate = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
DateTime time = startDate.AddSeconds(1268927156 );
Я предполагаю, что это временная метка UNIX, логика будет следующей:
Временная метка UNIX представляет собой время, измеряемое в количестве секунд с момента эпохи Unix (1 января 1970 года 00:00:00 GMT)
Есть статья codeproject, объясняющая преобразование. По сути, вам нужно сделать следующее:
// First make a System.DateTime equivalent to the UNIX Epoch.
System.DateTime dateTime = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
// Add the number of seconds in UNIX timestamp to be converted.
dateTime = dateTime.AddSeconds(timestamp);
Это похоже на временную метку unix, которая представляет собой количество секунд с 01 января 1970 года.
DateTime dt = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(1268927156);
Если и utc, и локальные временные метки одинаковы, то временная зона на вашей АТС либо установлена на UTC, и ваши временные метки действительно UTC, либо временная зона установлена на UTC, но время установлено на ваше местное время, и вы получаете ваше местное время для обеих временных меток. Вам нужно будет выяснить, что из этого следует, чтобы знать, конвертировать временные метки из UTC или нет.
Похоже, это временная метка Unix (количество секунд с момента эпохи)
DateTime translated = new DateTime(1970,1,1).AddSeconds(1268927156);
должна дать вам дату и время, которые вы искали...