写入磁盘:文件访问被拒绝

时间:2010-09-12 23:06:28

标签: c# file-io

我尝试将数据写入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得到它)我的应用程序返回一个例外:

  

文件访问被拒绝“。

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

1 个答案:

答案 0 :(得分:2)

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

您的意思是c:\Users\'username'\Documents吗?

在C#中你可以使用

Environment.GetEnvironmentVariable("userprofile")获取用户文件夹(即c:\ Users \ Postman) - 这类似于%userprofile%in run。