Datetime.ParseExact"字符串未被识别为有效的DateTime"错误

use*_*750 7 c# datetime

为什么我无法解析这样的字符串:

DateTime date = DateTime.ParseExact("?23.?02.?2016 08:59:35", 
                  "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)

这是一个例外

字符串未被识别为有效的DateTime.

我真的不明白.

Eli*_*bel 8

字符串中有一些零宽度的Unicode字符.如果你删除它们将工作:

DateTime.ParseExact("23.02.2016 08:59:35",
    "dd.MM.yyyy HH:mm:ss", CultureInfo.InvariantCulture)
Run Code Online (Sandbox Code Playgroud)

  • 使用带有while列表的正则表达式,例如`Regex.Replace("23.02. 2016 08:59:35",@"[^\d\s \:]",string.Empty) . (4认同)
  • @EliArbel我可以问你怎么发现字符串中有零宽字符?对我来说非常好奇,无论如何都有很好的答案! (2认同)