将字符串转换为DateTime失败

时间:2015-03-17 14:28:49

标签: c# datetime

我有一个字符串变量,其数据将是以下格式。

  

18-03-2015 16:39:15

我正在尝试使用小时/分钟/秒将其转换为有效的DateTime,但到目前为止,下面的行无效。

DateTime dt = DateTime.ParseExact("18-03-2015 16:39:15", "dd-MM-yyyy h:m:s", CultureInfo.InvariantCulture);

2 个答案:

答案 0 :(得分:7)

您需要使用大写HHH,所以"dd-MM-yyyy HH:m:s"使用此时间:16:39:15。

请参阅:The "HH" Custom Format Specifier

因此小写从1到12,大写为24h格式。如果您使用HHH取决于4:39:15是否可行或04:39:15。一个H支持这两种格式,因此有或没有前导零,而HH只允许04:39:15

答案 1 :(得分:1)

格式为HH:mm:ss

DateTime dt = DateTime.ParseExact("18-03-2015 16:39:15", "dd-MM-yyyy HH:mm:ss", CultureInfo.InvariantCulture);
// So: dt.ToString("dd-MM-yyyy HH:mm:ss") is 18-03-2015 16:39:15

Here是使用示例格式化日期的一些示例

相关问题