做了一個excel導入數據的功能,其中需要導入時間,默認到天。在開發過程中發現了一個問題, 導入的數據解析到的時間格式是 02-03-19,發現年份前面的兩位數丟失了。這當然是導入數據 的解析包的問題。深入代碼里面查看,發現excel解析到的原始數據是一個數字,但是並不是時 間戳,那么存儲的是什么呢?
原來Excel在本質上將日期和時間的存儲為一個數字,默認情況下,Excel把1900-1-1 0:00:00存儲為1,把1900-1-1 0:00:00以后的每一個時刻存儲為該時刻與1900-1-1 0:00:00這個時刻的差值(以天為單位)。
不信?請在A列輸入1900-1-1 0:00:00,單擊鼠標右鍵,在彈出的快捷菜單里選擇“設置單 元格格式”命令,最后在彈出的“設置單元格格式”對話框中,把單元格格式設置為“數值”。你 會發現,當把日期設置成數值格式后,A1單元格的內容變成了1。
