2011-06-09 15 views
15

Bir IronPython komut dosyasını çağırıyorum ve DateTime yapısını içeren bir .NET nesnesini iletiyorum..NET DateTime'dan IronPython tarihine nasıl dönüşebilirim?

Nesneyi JSON olarak serileştirmek için IronPython'un JSON desteğini kullanmaya çalışıyorum.

.NET DateTime ile karşılaşıncaya kadar her şey harika çalışıyor.

.NET DateTime ürününü IronPython datetime ürününe nasıl dönüştürebilirim?

+0

çok son yorum yardımcı olur mu http://msdn.microsoft.com/en-us/library/system.datetime%28v=vs .90% 29.aspx – keyboardP

+1

Biraz yardımcı oldu. alanları DateTime'dan el ile çekebilir ve yeni bir datetime yapabilir, ancak kolay bir şekilde umuyordum. Bu biraz yaygın olurdu gibi görünüyor. – ScArcher2

cevap

17

:

strptime henüz şimdilik (aksi takdirde sadece IronPython datetime.datetime.strptime(DateTime.Now.ToString(format), format).strftime(format)) çağırabilirler diye Bunun yerine, çok birini optimize edilmemiş (aşağıdaki kodu kullanabilirsiniz) uygulanmadı. insanlar biz aslında gerçekten kolaylaştırıyor bu arasına dönüştürmek isteyebilirsiniz:?

import datetime 
from System import DateTime 
datetime.datetime(DateTime.Now) 
+0

+1 Şaşırtıcı, doğru, sadece yanlış bir konsolda denedim. –

+0

Bu tam olarak aradığım şey! – ScArcher2

4

Bildiğimiz gibi, datetime türü aşağıdaki yapıya sahiptir: datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]). Yani tek ihtiyacınız olan, gerekli seçenekleri nasıl yerine getireceğinizin bir yolunu bulmak. öngören

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) 
+0

Bu, kullanmaya başladığım çözümdür. – ScArcher2

+0

Bende. Sanırım ikimiz de strptime gerçekleşmesiyle bir sonraki demir python sürümü için şimdi bekliyorum. –

İlgili konular