从字符串c#转换为戳记时间格式

时间:2015-05-27 09:44:34

标签: c# parsing date

我使用javascript选择日期并显示格式为(11-05-2015 17:37)

我尝试将其解析为日期时间,如下面的代码

DateTime taskDate = Convert.ToDateTime(txtDate.Text);

并将其保存到我的日期库中,如

TO_DATE('" + createOn + "')

它给我和错误调用“字符串未被识别为有效的DateTime。”

任何人都有其他方法将其解析为邮票时间吗?

txtDate.Text值是27-05-2015 09:37。

2 个答案:

答案 0 :(得分:2)

从字符串转换为日期时,

Convert.ToDateTime使用您当前的线程文化格式。

如果您转换的字符串具有其他格式,则需要使用DateTime.ParseExact并明确提供适当的格式。

例如,在你的情况下它应该是

DateTime taskDate = DateTime.ParseExact("11-05-2015 17:37", "dd-MM-yyyy HH:mm", CultureInfo.InvariantCulture);

另请查看custom datetime format strings以供参考。

答案 1 :(得分:1)

您可以使用DateTime.ParseExact或DateTime.TryParseExact

检查以下代码:

DateTime taskDate = DateTime.ParseExact(txtDate.Text, "dd-MM-yyyy hh:mm", CultureInfo.InvariantCulture);

或者

DateTime taskDate;

if (DateTime.TryParseExact(txtDate.Text, "dd-MM-yyyy hh:mm", CultureInfo.InvariantCulture, DateTimeStyles.None, out taskDate))
{
    //code if date valid
}
else
{
    //code if date invalid
}