当前位置:编程学习 > C#/ASP.NET >>

关于C# 读取Excel表里的日期格式数据

colValue[c] = Convert.ToString(((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2);

用这段代码读取Excel里的日期数据,如日期为(1940-8-14)它就读取为[14837],数据库里输入时出现日期格式不对的错误。
该如何解决呢? --------------------编程问答-------------------- ((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2 值是多少?

try:


DateTime.Parse(((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2).ToString("yyyy-MM-dd"); --------------------编程问答-------------------- 为什么1940-8-14,读取为【14837】呢?请教 --------------------编程问答-------------------- 很有可能是微软开发的时候就是已经固定了这些数值,如Excel里输入0会显示1900-1-0的日期。
引用 2 楼 njw1028 的回复:
为什么1940-8-14,读取为【14837】呢?请教
--------------------编程问答-------------------- Convert.ToDateTime(((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2 )

有用 --------------------编程问答-------------------- 也不好使。这段代码编译时就出错。
试过了很多方法,其中有一个方法是把,Excel里日期前面加一个[']符号。
这样读取时就正常了。

引用 1 楼 q107770540 的回复:
((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2 值是多少?

try:


DateTime.Parse(((Excel.Range)workSheet.Cells[rowIndex, colIndex]).Value2).ToString("yyyy-MM-dd");
补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,