【问题标题】:Unable to copy files in full over a network share无法通过网络共享完整复制文件
【发布时间】:2010-08-18 14:52:48
【问题描述】:

我正在尝试使用 C#/ASP.net 读取 Excel 电子表格。如果工作簿在我的本地驱动器上,则此条目 here 非常有用。

但是,当我尝试访问网络共享上的任何工作簿时,我只能获得前 30 行数据。

当我使用 File.Copy 将文件复制到服务器的本地驱动器时,我只得到 35kb(当我在 Excel 中打开时,结果文件中只有 30 行数据)。

如何让文件通过网络完整打开,或者如何先将完整文件复制到本地驱动器?

编辑:我应该注意手动复制文件非常好。通过网络打开文件会在 Excel 中显示文件的全部内容。只有当通过 ASP.NET 应用程序访问文件时,它才会将自身限制为 35kb。一定有这个限制后终止连接的设置,但是不知道在哪里。

Edit2:我用来复制文件的代码:

File.Copy("\\\\server\\share\\path\\to\\file\\workbook.xls","c:\\workbook.xls");

【问题讨论】:

  • 听起来有点奇怪,你能用 StreamReader 读取文件吗?
  • @Arkain 是的,我只能读取其中的 35kb,它会像文件完成一样终止。

标签: c# asp.net excel file-io


【解决方案1】:

网络共享的常见问题是您没有调用WNetAddConnection2。然而 35kb 使这令人困惑,所以我不知道。也许仍然值得一试。

【讨论】:

    猜你喜欢
    • 2011-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-06-26
    相关资源
    最近更新 更多