将时间戳字符串转换为c#中的DateTime对象

我有以下列格式的时间戳字符串5/1/2012 3:38:27 PM 。 如何在c#中将其转换为DateTime对象

您输入的字符串看起来像en-us格式,即M/d/yyyy h/mm/ss tt 。 解析时必须使用正确的CultureInfo实例:

 var ci = System.Globalization.CultureInfo.GetCultureInfo("en-us"); var value = DateTime.Parse("5/1/2012 3:38:27 PM", ci); 

要么

 var ci = new System.Globalization.CultureInfo("en-us"); 
 var date = DateTime.ParseExact("5/1/2012 3:38:27 PM", "M/d/yyyy h:mm:ss tt", CultureInfo.InvariantCulture); 

尝试使用DateTime.ParseExact方法;

 string s = "5/1/2012 3:38:27 PM"; DateTime date = DateTime.ParseExact(s, "M/d/yyyy h:mm:ss tt", CultureInfo.InvariantCulture); Console.WriteLine(date); 

使用指定的格式和特定​​于区域性的格式信息将指定的日期和时间字符串表示forms转换为其DateTime等效forms。 字符串表示的格式必须与指定的格式完全匹配。

输出将是;

 01.05.2012 15:38:27 

请注意 ,此输出可以根据您使用的文化进行更改。 由于我的Culturetr-TR ,日期运算符是. 我们的文化。

这是一个DEMO

尝试DateTime.ParseExact方法

http://www.codeproject.com/Articles/14743/Easy-String-to-DateTime-DateTime-to-String-and-For
这可能对你有帮助。 在那里,您可以找到ParseExact参数的详细说明。