Как мне преобразовать дату .NET DateTime в дату и время IronPython? - PullRequest
15 голосов
/ 09 июня 2011

Я вызываю скрипт IronPython и передаю ему объект .NET, который содержит структуру DateTime.

Я пытаюсь использовать поддержку JSON IronPython для сериализации объекта как JSON.

Все отлично работает, пока я не столкнусь с .NET DateTime.

Как мне конвертировать из .NET DateTime в IronPython datetime?

Ответы [ 2 ]

17 голосов
/ 10 июня 2011

Предвидя, что людям может понравиться переходить между ними, мы действительно делаем это очень просто:

import datetime
from System import DateTime
datetime.datetime(DateTime.Now)
4 голосов
/ 09 июня 2011

Как мы знаем, тип datetime имеет следующую структуру: datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]).Поэтому все, что вам нужно, это найти способ выполнить необходимые параметры.

strptime еще не реализовано (в противном случае у вас будет возможность просто вызвать datetime.datetime.strptime(DateTime.Now.ToString(format), format).strftime(format)) в IronPython. Вместо этого вы можетеиспользуйте следующий код (не очень оптимизированный) сейчас:

from System import DateTime

import datetime

d = DateTime.Now

print datetime.date(d.Year, d.Month, d.Day)
print datetime.datetime(d.Year, d.Month, d.Day, d.Hour, d.Minute, d.Second)
...