2016-08-17 26 views
1

我想创建一个xml文件。我是将包含创建的文件的文件夹的所有者。我的代码创建一个空文件,当我调试,我得到拒绝访问错误此行c#访问被拒绝创建一个新文件

Stream writeOutput = File.Create(Path.Combine(outputLocation, string.Format(FILEFORMAT, agent, Number, FILE_EXTENSIONS.XML))) 

请帮助

这里是我的代码:

SPSecurity.RunWithElevatedPrivileges(delegate() 
    { 

     using (Stream writeOutput = File.Create(Path.Combine(outputLocation, string.Format(FILEFORMAT, agent, Number, FILE_EXTENSIONS.XML)))) 
       { 
       using (Stream xmlOutput = OutputFileCreator.CreateOutputXMLFile(Number, rejectionReason)) 
         { 
         byte[] buffer = new byte[xmlOutput.Length]; 
         xmlOutput.Position = 0; 
         xmlOutput.Read(buffer, 0, buffer.Length); 
         writeOutput.Write(buffer, 0, buffer.Length); 
         } 
       }  
    }); 

enter image description here

+0

什么是你写的路径?如果你在Windows机器上运行它,你可能需要用管理员权限来执行你的程序(默认为C:\除了你的用户文件夹以外的任何路径) – Glubus

+0

我使用文件夹编辑我的文章和空的创建的xml – BKChedlia

+0

访问否认...非常清楚的消息。运行该程序的用户不具有对该文件夹的写入权限。因此请检查用户是否有写入路径的权限。 –

回答

1

你可能必须让您的机器可以访问文件夹,而不仅仅是您的用户。尝试向文件夹或YourMachineName $的属性中的所有人添加共享权限,以指示您的物理机可以访问。

+0

我在远程计算机上工作,如果我没有权限,我创建了这个文件夹,请问我能解释一下,即使它是空的,它是如何创建文件的? – BKChedlia

+0

你可以真正创建文件但不能写入文件吗? – uTeisT

+0

我删除该文件夹并重新创建它并在c#中覆盖,现在它可以工作...谢谢 – BKChedlia