【问题标题】:Excel 2010 Access to path is denied tempExcel 2010 访问路径被拒绝临时
【发布时间】:2011-06-04 20:20:34
【问题描述】:

我正在使用 excel 数据阅读器从 excel 文件中读取数据。

FileStream 流 = File.Open(filePath, FileMode.Open, FileAccess.Read);
//1.从二进制 Excel 文件('97-2003 格式;*.xls)读取
IExcelDataReader excelReader = ExcelReaderFactory.CreateBinaryReader(stream);
//2.从 OpenXml Excel 文件中读取(2007 格式;*.xlsx)
IExcelDataReader excelReader = ExcelReaderFactory.CreateOpenXmlReader(stream);

http://exceldatareader.codeplex.com/

这会在我的本地机器上读取 excel 1997-2003 格式和 excel 2007 格式,当我们将其移动到我们的测试服务器时。

但是,当转移到生产环境时,它适用于 excel 97-2003 文件,但是当我尝试读取 2007 文件时,我收到以下错误:

拒绝访问路径“C:\Documents and Settings\PORTALS03\ASPNET\LOCALS~1\Temp\TMP_Z129388041687919815”。

怎么可能97-2003的excel文件可以读取但是2007的文件抛出访问被拒绝?

【问题讨论】:

    标签: c# excel permissions


    【解决方案1】:

    我在这里猜测您可能没有关闭或处置 excel 数据阅读器。

    或者您没有正确处理创建该临时文件的代码。

    如果没有看到您用来生成和读取文件的代码,就无法确定。

    【讨论】:

      【解决方案2】:

      我发现 Excel 数据阅读器会创建它读取的 Excel 文件的临时文件。 错误听起来好像没有授予存储这些临时文件的目录的权限。 所以 Excel Reader 无法完成它的工作。

      【讨论】:

        猜你喜欢
        • 2016-11-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多