[C#] Форматированный вывод DateTime из UnixTime

  • Автор темы Автор темы Manless
  • Дата начала Дата начала

Manless

Client
Регистрация
09.01.2014
Сообщения
186
Реакции
33
Баллы
28
После конвертации UnixTime в DateTime кодом:
Код:
Развернуть Свернуть Копировать
int timestamp = 1439306595;
DateTime date = new DateTime(1970, 1, 1).AddSeconds(timestamp);
return date;

Получаем значение: 11.08.2015 15:23:15

Так вот вопрос, как привести формат даты к виду: d.m. ? Но не dd.mm.
 
  • Спасибо
Реакции: luserz
Так вот вопрос, как привести формат даты к виду: d.m. ? Но не dd.mm.
Код:
Развернуть Свернуть Копировать
int timestamp = 1439306595;
DateTime date = new DateTime(1970, 1, 1).AddSeconds(timestamp);
return date.ToString("d.M.y H:mm:ss");
 
  • Спасибо
Реакции: luserz, CSS и Manless
Затестил данный сниппет. Попробовал расшифровать дату и время размещения постов из ВК - не правильно показвает время. Время в часах отстает на 3 часа. Например: ВК показвает что пост был сделан в 14:20, сниппет - 11:20.
В чем может быть дело?
 
Затестил данный сниппет. Попробовал расшифровать дату и время размещения постов из ВК - не правильно показвает время. Время в часах отстает на 3 часа. Например: ВК показвает что пост был сделан в 14:20, сниппет - 11:20.
В чем может быть дело?
В часовой полосе, скорее всего таймстемп приходит по времени UTC(GMT 0)
 
  • Спасибо
Реакции: molotok
Использовать функцию .addHours(3)
Спасибо, сработало.

Код:
Развернуть Свернуть Копировать
double timestamp = 1466545129;
DateTime date = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(timestamp).AddHours(3); // .AddHours(3) - прибавляет 3 часа к расшифрованному времени
return date.ToString("d.M.y H:mm");
 
Я только начинаю разбираться с C#, поэтом я не знаю про настройку таймера.
Там идет отсчет секунд с 1970 г., чем и является timestamp, то есть можно добавить любое количество секунд и получить любое время.
 
Код:
Развернуть Свернуть Копировать
int timestamp = project.Variables["unixDate"].Value;
DateTime date = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(timestamp).AddHours(3); // .AddHours(3) - прибавляет 3 часа к расшифрованному времени
return date.ToString("dd.MM.y H:mm");

Подскажите, пожалуйста, что нужно сделать чтобы заработало? http://i.imgur.com/ig2svEU.png
 
Замудрил вот такое решение
Код:
Развернуть Свернуть Копировать
string s;
int a;
s = project.Variables["unixDate"].Value;
a = int.Parse(s);

int timestamp = a;
DateTime date = new DateTime(1970, 1, 1, 0, 0, 0, 0).AddSeconds(timestamp).AddHours(3); // .AddHours(3) - прибавляет 3 часа к расшифрованному времени
return date.ToString("dd.MM.y H:mm");
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)