当前位置:  开发笔记 > 编程语言 > 正文

找不到中心目录错误

如何解决《找不到中心目录错误》经验,为你挑选了1个好方法。

我正在尝试从excel文件中读取数据.

FileStream stream = File.Open (@"C:\Temp\F1\SMRPAC974-00024COMINVDETEXTRACT.xlsx", FileMode.Open, FileAccess.Read);
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);
DataSet result = excelReader.AsDataSet();
excelReader.Close();
string csvData = "";
int row_no = 0;
while (row_no < result.Tables[0].Rows.Count)
{
 for (int i = 0; i < result.Tables[0].Columns.Count; i++)
 {
  csvData += result.Tables[0].Rows[row_no][i].ToString() + ";";
 }
 row_no++;
 csvData += "\n";
}

我目前正在处理的问题是"无法找到中心目录"的错误.我不知道这意味着我甚至尝试将excel文件移动到不同的位置,但我仍然面临同样的错误.



1> Rob..:

一个例外说明:

找不到中心目录

表示以下之一可能是真的:

    该文件已损坏

    该文件实际上不是.xslx文件(您确定它不是.xls文件吗?)

    您用来读取文件的库有一个错误

从您的代码看起来您​​正在使用ExcelDataReader并尝试打开XML format(xlsx)文件.您确定该文件实际上不是.xls某人错误命名的文件.xlsx吗?您可以使用以下方法检查:

IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);

代替:

IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);

推荐阅读
路人甲
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有