我没有习惯将字符串转换为日期,有人可以帮助我吗?
String str = "2014-09-10T18:42:17";
DateTime datetime = DateTime.ParseExact(str, "dd/MM/yyyy HH:mm", CultureInfo.InvariantCulture);
答案 0 :(得分:3)
你能试试吗
DateTime datetime = DateTime.ParseExact(str, "yyyy-MM-ddTHH:mm:ss", CultureInfo.InvariantCulture);
字符串格式必须与日期格式完全匹配。
来自MSDN,ParseExact()
将指定的日期和时间字符串表示形式转换为它 DateTime等效使用指定的格式和特定于文化 格式信息。字符串表示的格式必须匹配 准确的指定格式。
Exactly
是关键词。因此,在您的示例中,确切的字符串格式为:
2014-09-10T18:42:17
yyyy-MM-ddTHH:mm:ss
答案 1 :(得分:2)
你看过你的源数据了吗?它是以ISO 8601长格式表示的日期/时间
2014-09-10T18:42:17
另一方面,您的格式说明符正在寻找
形式的字符串dd/MM/yyyy HH:mm
其中dd
是月中的某一天(01-31),MM
是月份数(01-12),yyyy
是4位数年份,{{ 1}}是一天中的小时(00-23),HH
是分钟(00-59)。它将匹配看起来像
mm
如果要匹配源数据,则需要使用以下格式字符串:
10/09/2014 18:42
您可以尝试阅读文档: