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

Put*_*aKg 5 c# datetime windows-phone-8

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

Ere*_*mez 8

var date = DateTime.ParseExact("5/1/2012 3:38:27 PM", 
    "M/d/yyyy h:mm:ss tt",
    CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)


Mar*_*zek 6

你输入的字符串看起来就像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);
Run Code Online (Sandbox Code Playgroud)

要么

var ci = new System.Globalization.CultureInfo("en-us");
Run Code Online (Sandbox Code Playgroud)


Son*_*nül 5

尝试使用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);
Run Code Online (Sandbox Code Playgroud)

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

输出将是;

01.05.2012 15:38:27
Run Code Online (Sandbox Code Playgroud)

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

这是一个DEMO.