C#中的日期格式问题?从 Excel 检索数据时

Date format problem in C#? While retrieving data from Excel

下面是我的代码图片,请看一下。

我正在尝试从 excel sheet 检索数据并通过 SQL bulkcopy 将其存储到数据库 table。

错误:

日期格式为05-01-2019;它被错误地插入为 2019-05-01(数据库)- 正确的日期是 2019-01-05.

当日期大于 12 时,它以正确的格式存储。

2019-12-25 (database) correct 
Excel : 25-12-2019

首先使用

将您的字符串转换为日期
DateTime.ParseExact("25-12-1986", "dd-MM-yyyy", NULL)

然后将其格式化为您的日期

你也可以考虑使用TryParseExact来检查格式错误

你的问题是 05-01-2019 在美国风格的日期格式中往往意味着 'May 1st 2019',因此你需要非常小心格式。将 25-12-1966 自动设为 12 月 25 日(这就是它可以解释的所有内容)的策略并不像看起来那么有用。