【问题标题】:writing to disk: File access denied写入磁盘:文件访问被拒绝
【发布时间】:2010-09-13 07:27:59
【问题描述】:

我尝试将我的数据写入 Excel 文件。我正在使用工作簿方法 SaveAs。这是代码:

string FN = "C:\\Users\\Documents\\dane1.xlsx";
WB.SaveAs(FN, Excel.XlFileFormat.xlWorkbookNormal,
            Missing.Value, Missing.Value, Missing.Value, Missing.Value,
            Excel.XlSaveAsAccessMode.xlShared,
            Missing.Value, Missing.Value, Missing.Value,
            Missing.Value, Missing.Value);

当第一个参数被硬编码时,一切正常。当我尝试使用对保存路径和文件名的对象的引用(我从 SaveFileDialog 获得)时,我的应用程序返回一个异常:

文件访问被拒绝”。

怎么了?有谁知道如何避免这种情况?

【问题讨论】:

  • 看起来文件已经打开(您的应用已打开以供修改)。

标签: c# file-io


【解决方案1】:

如果您运行的是 Vista / Windows 7,您可能需要以管理员身份运行您的应用程序以保存到 c:\Users\Documents(通常不存在)

你是说c:\Users\'username'\Documents吗?

在 C# 中,您可以使用 Environment.GetEnvironmentVariable("userprofile") 获取用户文件夹(即 c:\Users\Postman) - 这就像在运行中键入 %userprofile%。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-07
    • 1970-01-01
    • 1970-01-01
    • 2013-08-19
    • 2014-02-28
    • 2012-01-31
    • 1970-01-01
    相关资源
    最近更新 更多