将字符串转换为DateTime时出错

本文关键字:出错 DateTime 字符串 转换 | 更新日期: 2023-09-27 18:21:32

我正在尝试将字符串值转换为DateTime。它给了我一个错误,因为指定的字符串格式不正确。

这是代码,

DateTime myDate = DateTime.ParseExact("07-09-2013 01:14:14:1414", "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
string strDate = "07/09/2013 01:04:02:4";
Convert.ToDateTime(strDate); 
DateTime dt = DateTime.Parse(strDate);

请帮助转换相同内容。

感谢

将字符串转换为DateTime时出错

您的格式似乎不正确。应为:

"dd-MM-yyyy HH:mm:ss:ffff"

更新如果表示几分之一秒的位数不同,则最佳选择是

"dd-MM-yyyy HH:mm:ss:FFFFFFF"

有关自定义时间和日期格式的其他选项,请参阅MSDN。

尝试页面加载事件:

Thread.CurrentThread.CurrentUICulture = New System.Globalization.CultureInfo("tr-TR")
Thread.CurrentThread.CurrentCulture = New System.Globalization.CultureInfo("tr-TR")

首先,您和您多年来放置

07-09-2013 is dd-MM-yyyy format

第二,你需要一个:ffff秒后

所以最后一行应该是

DateTime myDate = DateTime.ParseExact("2013-07-09 01:14:14:1414", "yyyy-MM-dd HH:mm:ss:ffff", System.Globalization.CultureInfo.InvariantCulture);

您的格式不正确:"2013年7月7日01:14:1414"yyyy-MM-ddHH:MM:ss"

至少你的日期是相反的,并且没有指定毫秒。根据以下内容更正您的格式:http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx

对于落选者:正确的格式由Andrei:"dd-MM-yyyy HH:mm:ss:ffff" 指定

首先,您应该将日期格式更改为dd-MM-yyyy,因为它适合您的日期格式。

其次,对于毫秒部分,可以使用.而不是:

DateTime myDate = DateTime.ParseExact("07-09-2013 01:14:14.1414", "dd-MM-yyyy HH:mm:ss.ffff", System.Globalization.CultureInfo.InvariantCulture);
string strDate = "07/09/2013 01:04:02.4";
Convert.ToDateTime(strDate);
DateTime dt = DateTime.Parse(strDate);

这里是演示

有关更多信息,请查看Custom Date and Time Format Strings