处理日期格式

时间:2014-03-31 23:00:15

标签: c# date-format

我有一个C#/ .Net Windows应用程序。 它解析从外部源接收的excel文件。此excel文件的日期为MM / dd / yyyy格式。 但格式可能在未来发生变化。例如。它可能是yyyy-mm-dd或yyyyMMdd或其他东西。 DateTime.ParseExact在输入中需要dateformat。

是否可以使我的C#代码与dateformat无关,以便将来不需要进行代码更改? 如果是,我该如何实现这一目标?

2 个答案:

答案 0 :(得分:0)

您最有可能寻找DateTime.TryParse()之类的内容。它适用于任何格式,如果出现问题,它将引发一个你可以处理的异常。

答案 1 :(得分:0)

以下是使用以下DateTime方法的方法:

  • 解析:输入将始终采用标准系统格式。
  • TryParse:输入可能采用标准系统格式。
  • ParseExact:输入将始终采用特定格式。
  • TryParseExact:输入可能采用特定格式。

对我而言,听起来它们实际上并没有完全适用于你。如果您一次只期望一种格式但格式可能会改变,那么我建议使用TryParseExact,但在外部存储日期格式,例如在配置文件中。这样,如果格式改变,您将不必重新编译,但您也不会依赖于与标准系统格式匹配的格式。