http://exceldatareader.codeplex.com/を使用しています。D/M/Y などの日付を持つ列を含む Excel ファイルがあります。このコードを使用してこのファイルを読み込もうとしています:
FileStream stream = File.Open(FilePath, FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = null;
lock (LockToReadExcelFile)
{
if (FilePath.EndsWith(".xls", true, System.Globalization.CultureInfo.InvariantCulture))
{
excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
}
else if (FilePath.EndsWith(".xlsx", true, System.Globalization.CultureInfo.InvariantCulture))
{
excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
}
else
{
return;
}
}
次に、次のように DataSet に追加します。
excelReader.IsFirstRowAsColumnNames = false;
DataSet excelDataTable = excelReader.AsDataSet();
オブジェクトの行を返し{System.DateTime}
ます。日付データを形式で解析してほしいSystem.String
(たとえば、Date 7/11/2015 は として返され7/11/2015 12:00:00 AM {System.DateTime}
ます)。
PS: 私も試してみexcelReader.AsDataSet(false);
ましたが、結果は同じです。