写入文件我收到了未经授权的访问错误。我该怎么做?

时间:2011-04-28 15:50:21

标签: c# windows-7 permissions

尽管在网上发布了很多帖子但我无法找到问题的答案。 我正在编写一个将csv文件写入文件夹的应用程序。用户应该能够选择一个目录。 我在Windows 7中使用vs2010在管理模式下运行我的应用程序进行开发。无论如何,当我这样做时,我仍然会收到“未经授权的访问异常”

   var path=@"c:\" or c:\MyFolder
   StringBuilder sb=new StringBuilder();
   sb.AppendLine("Test");
   var myFile=sb.ToString();
   using (var writer=new StreamWriter(path))
     {
        writer.Write(myFile);
     }

我错过了什么吗? 我觉得在window7中你只能写到指定的文件夹。这就是发生了什么?

有什么建议吗?

EDITED

我在“C:\ MyFolder \”

下创建了几个文件夹

我没有使用任何凭证,例如Windows假冒等。

如果它写入我的类库的bin \ debug \,它会写入。但不是任何指定的文件夹。

2 个答案:

答案 0 :(得分:6)

您的代码段是否是导致问题的真实代码?

从表面上看,您正在尝试将文本“Test”流式传输到文件系统上的目录,而不是尝试编写文件。 (path刚刚分配给@"C:\")。我得到UnauthorizedAccessException时并不感到惊讶。

将要写入的文件的完整路径分配到path变量中,我想你会成功。

答案 1 :(得分:0)

尝试使用“以管理员身份运行”运行您的应用。上述评论可能也会引导您朝着正确的方向前进。您一定要选择一个Windows用户可以编辑的目录。