2016-07-11 61 views
1

我在excel中做了一個特殊的日期列粘貼。我想將結果long值轉換回spark中的日期(使用scala api)。如何在scala中重新創建excel的Long類型日期類型轉換

Example: converting 41088.96389 to date in excel results in 6/29/16 23:08 same when did through cast(DataTypes.TimestampType) in spark, it gives 01 Jan 1970 11:24:48 GMT

任何鏈接到Excel如何處理長類型時,轉換到日期將被理解的。

回答

2

Excel的數量是自1第一經過天的量,1900 DateTimeDate通常接受UNIX紀元時間戳,這是毫秒數(或有時秒,取決於實現),因爲第一經過1970年1月。

兩者之間的轉換並不容易,因爲你必須計算閏年,甚至可能是時區。

你可以在不同的語言爲此多個實現,也許你可以端口其中之一:

https://gist.github.com/peter216/6361201

https://gist.github.com/christopherscott/2782634

或者,也許只是嘗試,如果你有機會獲得標準化輸出到Excel到表: https://stackoverflow.com/a/11140924/1395437

+0

謝謝。你的回答正好解決了我的問題。 – Omley

相關問題