【发布时间】:2019-09-24 13:09:46
【问题描述】:
我在 Excel 中有一个DateTime 和string,具有不同的格式。我想 convert 使用 c# 将 string 格式转换为 DateTime。但我收到以下异常:
字符串未被识别为有效日期时间。
DateTimeOffset.Parse("09/20/2019 17:25:59");
预期:
2019 年 9 月 20 日 17:25:59
实际:
System.FormatException
【问题讨论】:
-
你可以做“任何”格式,你需要准确地指定它,虽然你可以指定multiple formats。
-
你提前知道每个值的格式吗?
-
使用适当格式的
ParseExact。或者将这个ofrmat对应的CultureInfo对象作为第二个参数传入,例如Parse("..",CultureInfo.GetCultureInfo("en-US")) -
Excel和datatable标签与这个问题有什么关系? Excel 本地存储日期,这意味着它们可以直接读取为DateTime。 实际问题是什么? -
我复制粘贴了您的代码,没有发现任何问题。似乎您的 PC 日期格式可能与您尝试解析的不同。在这种情况下,您应该使用 ParseExact
标签: c# excel datetime datatable