File.WriteAllText抛出UnauthorizedAccessException

时间:2009-10-06 15:35:02

标签: .net windows file-access

对远程路径执行File.WriteAllText会引发UnauthorizedAccessException。当我在记事本中打开文件时,我可以毫无问题地编辑它。尝试修改文件的过程作为我自己的用户帐户运行,因此它应该能够访问它。

3 个答案:

答案 0 :(得分:12)

如果文件设置了“hidden”属性,则也会抛出UnauthorizedAccessException。不要问我为什么......

答案 1 :(得分:9)

根据MSDNUnauthorizedAccessException也可能由以下原因引起:

path specified a file that is read-only.

-or- 

This operation is not supported on the current platform.

-or- 

path specified a directory.

这些条件中的一个是否可能导致您的问题?

答案 2 :(得分:1)

我相信如果文件被另一个进程或线程锁定,你也会得到这个异常(尽管没有记录)。

确保没有其他内容以禁止写入的方式打开文件。记事本不是检查文件是否被锁定的好测试,因为它将打开一个锁定的文件(即:只读文件很好)。