【发布时间】:2016-07-25 13:46:49
【问题描述】:
我有一个从 MS excel 文件中读取数据的 c# 应用程序。 excel单元格格式为[$-10409]m-d-yyyy h:mm:ss AM/PM
我正在使用 NuGet 中的 ExcelDataReader 从 excel 文件中读取数据。
var file = new FileInfo(strFilePath);
using (var stream = new FileStream(strFilePath, FileMode.Open))
{
IExcelDataReader reader = null;
if (file.Extension == ".xls")
{
reader = ExcelReaderFactory.CreateBinaryReader(stream);
}
else if (file.Extension == ".xlsx")
{
reader = ExcelReaderFactory.CreateOpenXmlReader(stream);
}
ds = reader.AsDataSet();
dt = ds.Tables[0];
}
当我读取数据时,值会发生变化。例如7-1-2016 11:05:00 AM 转换为 42552.4618055556。
有什么方法可以在阅读时得到正确的值吗?
【问题讨论】:
-
谢谢@Scroog1。它工作:)
标签: c# excel exceldatareader