我遇到文件导入问题。我正在尝试将.xls文件导入SQL Server。但问题是日期格式。 经过一些调试,我发现我正在以文本格式阅读日期。 我的日期是f.eg。:' 01-01-2017',但是当我调试时我看不到日期,我可以看到' 42736'相反,这是日期的文本格式。 任何人都可以帮忙解决一些如何解决这个问题的想法吗?
string strDate = table.Rows[i][2].ToString();
DateTime date = Convert.ToDateTime(strDate.Replace(".", "-"));
ImportToAP(Int32.Parse((table.Rows[i][26]).ToString()), date, Double.Parse((table.Rows[i][38]).ToString()), (table.Rows[i][33]).ToString(), Int32.Parse((table.Rows[1][4]).ToString()));
答案 0 :(得分:3)
DateTime date = DateTime.FromOADate(table.Rows[i].Field<double>(2));
如果那真的是一个字符串列(我怀疑):
DateTime date = DateTime.FromOADate(double.Parse(table.Rows[i].Field<string>(2)));
答案 1 :(得分:0)
您可以使用DateTime.FromOADate()
方法。
只需使用strDate
方法检查是否可以解析Double.TryParse()
加倍。如果是这样,请使用DateTime.FromOADate((double)strdate)
否则使用默认方法。
参考: