2012-07-06 344 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

相关问题