npoi導入--從varchar數據類型到datetime數據類型轉換產生一個超出范圍的值問題


一,導入問題如圖:

 

二,解決方法和原因:

1,經過調試發現導入獲取到的日期數據被裝換成1/1/10 0:00,如下圖:

而將以上的數據插入數據庫類型為datatime的列時會報錯

2,經過去了解npoi的CellType之后發現: 

CellType.NUMERIC: NPOI中數字和日期都是NUMERIC類型的,則我們需要在這個類型是判斷下是否是日期即可,如下代碼

 

 case CellType.NUMERIC:   //NPOI中數字和日期都是NUMERIC類型的,這里對其進行判斷,返回一個數值,無論cell值是一個日期或數字
      if (DateUtil.IsCellDateFormatted(cell))
      {
      return cell.DateCellValue.ToString();
      }
       else 
    {
return cell.ToString(); }

則,可以插入成功

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM