C#,创建.txt文件

时间:2013-06-03 13:02:16

标签: c# file

我无法使用下面的代码创建.txt文件。我得到如下例外:

  

未处理的异常:System.unauthorizedAccessException:访问   路径'C:\ log.txt'被拒绝。

我已经在线查看并完成了与api相似的事情。下面是我的代码,所以你可以理解我的逻辑列是什么。您认为导致此异常的原因是什么?提前谢谢!

static StreamWriter swt;
static string logFile = @"C:\log.txt";
static FileStream fs;
static void Main(string[] args)
{
    Console.Out.WriteLine(swt);
    string root =  args[0];                       
     if (!File.Exists(logFile))
     {
         try
         {
             fs = File.Create(logFile);
         }
         catch (Exception ex)
         {
             swt.WriteLine("EXCEPTION HAS BEEN THROWN:\n " + ex + "\n");
         }
         {

         }
     }
 }

3 个答案:

答案 0 :(得分:9)

您最有可能收到此错误,因为标准用户无法在没有提升权限的情况下写入驱动器的根目录。请参阅here

答案 1 :(得分:2)

检测文件夹权限。它必须具有对已登录用户的写入权限。

答案 2 :(得分:2)

是的,这是权限错误。您没有足够的权限在C:驱动器中写入文件。要写入这些类型的文件夹/驱动器,您需要管理员权限。

您可以授予您的应用程序管理员权限。简单的方法是强制您的应用程序仅在管理员帐户/权限中启动。实现这个目标

解决方案资源管理器 - >你的项目 - >添加新项目(右键单击) - >应用程序清单文件。

在此文件中将requestedExecutionLevel更改为

<requestedExecutionLevel level="highestAvailable" uiAccess="false" />

这些仅使用管理员权限强制执行您的应用程序。在Windows 8/7 / Vista上,当您启动应用程序时,它将显示UAC(用户访问控制)对话框。

希望这会对你有帮助....