1

一部のExcelファイルにexcelDatareaderを使用するExcelReaderFactory.CreateOpenXmlReader(stream)と、nullが返され、ファイルストリームが取得されません。しかし、いくつかのExcelファイルでは完璧に動作しています。

誰かが私に理由を説明できますか?

static void Main(string[] args)
{
    FileStream stream = File.Open(@"C:\Users\nichi-user\Desktop\BLRJCCI.xls", FileMode.Open, FileAccess.Read);

    IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);

    DataSet result = excelReader.AsDataSet();

    result.Tables[0].TableName.ToString();
}

ここに画像の説明を入力

4

2 に答える 2

4

Excel には次の 2 つのタイプがあります。 -バイナリ (MS Excel 2003 以前のバージョン - .xls) -Zip - Open Office XML 標準に基づく (MS Excel 2007 以降 - .xlsx)

古い Excel 形式のファイルには、次を使用してみてください。

ExcelReaderFactory.CreateBinaryReader(fileStream);

于 2015-01-22T13:34:57.563 に答える