我使用此库读取了一个excel(xslx)文件:http://www.codeproject.com/Tips/801032/Csharp-How-To-Read-xlsx-Excel-File-With-Lines-of
excel表包含一些时间值。似乎excel将此值转换为时间字符串。
如果我查看excel zip中工作表的源文件,时间值就是这样的数字:
40056.583055555559
有人知道这是哪种格式以及如何将其转换为时间字符串或时间标记?
答案 0 :(得分:1)
Excel将日期/时间值存储在双(浮点)值中,其中整个部分(小数点左侧的部分)是自18/22/18/18午夜以来的天数,时间是在小数部分(小数点右边的部分)中编码。时间表示为一天的小数部分;例如,上午6:00是0.25,中午12:00是0.5,6:00 PM是0.75。
Excel不会将值“转换”为时间字符串。它只是将其显示为时间字符串;实际值是浮点数。
您发布的价值代表2009年8月31日13:59:36(下午1:59:36)。
您可以使用DateTime.FromOADate将其转换为与.NET兼容的DateTime
值。