2012-07-06 40 views
5

如何將從DB2 ISeries返回的時間戳轉換爲c#中的DateTime數據類型?如何將DB2時間戳轉換爲datetime?

2012-07-06 09:52:50.926145 

這並沒有爲我工作

myEmployee.LastModified = Convert.ToDateTime(myRecord.GetString(myRecord.GetOrdinal("LASTMODIFIED"))); 

回答

5

DateTime.Parse辦呢?

DateTime result = DateTime.Parse("2012-07-06 09:52:50.926145"); 

It works, really.

+0

感謝您的回覆miniTech。看來C#裏面的GetString是個問題。它是返回我2012-07-06-09:52:50.926145由於一些奇怪的原因。注意額外的' - ' – 2012-07-06 05:19:33

+4

@DamienJoe:然後使用DateTime.ParseExact(「2012-07-06-09:52:50.926145」 ,「yyyy-MM-dd-HH:mm:ss.FFFFFF」,null)'。 [這裏是一個演示。](http://ideone.com/AExyK) – Ryan 2012-07-06 05:25:02

+0

優秀的解決方法!大拇指爲所有幫助=)你知道爲什麼GetString是這樣做的嗎? – 2012-07-06 05:35:30

1

您可以DateTime.TryParse()

DateTime date; 
DateTime.TryParse("2012-07-06 09:52:50.926145", out date); 

在你的情況

DateTime date, 
DateTime.TryParse(myRecord.GetString(myRecord.GetOrdinal("LASTMODIFIED")), out date); 
+0

感謝@Asif的形式返回2012-07-06-09:52:50.926145但它似乎是在查詢管理精細。 – 2012-07-06 05:22:44

+0

您可以用空格替換它int int =「2012-07-06-09:52:50.926145」.LastIndex(「 - 」); – 2012-07-06 05:26:53