我有一个包含以下日期时间字符串的字符串变量。它的格式为 dd / MM / yyyy HH:mm tt
string temp = "31/12/2014 12:15 AM";
我想将此日期时间分配给C#datetime varialble。
答案 0 :(得分:1)
如果dd/MM/yyyy hh:mm tt
(与您的CurrentCulture
DateSeparator
以及)是CurrentCulture
的标准日期和时间格式,您可以直接使用DateTime.Parse
。
var dt = DateTime.Parse("31/12/2014 12:15 AM");
如果不是,您可以使用DateTime.TryParseExact
之类的自定义日期和时间格式;
string s = "31/12/2014 12:15 AM";
DateTime dt;
if(DateTime.TryParseExact(s, "dd/MM/yyyy hh:mm tt", CultureInfo.InvariantCulture,
DateTimeStyles.None, out dt))
{
//
}
只需注意:/
format specifier具有替换当前文化或提供的文化日期分隔符的特殊含义。这意味着如果您使用的文化没有DateSeparator
作为/,
,那么如果您的字符串和格式完全匹配,则解析操作将失败甚至。