C# 如何复制只读文件?
当源文件设置了只读属性时,C# 如何复制只读文件?,c#,.net,C#,.net,当源文件设置了只读属性时,System.IO.File.Copy失败 复制到我得到一个错误: 对路径的访问被拒绝。 (系统。未经授权的访问例外) 我有一个场景,在修改模板文件之前将其复制到目标路径,为了安全起见,我希望模板是只读的 为什么我不能以这种方式复制只读文件,如何才能轻松/明智地实现我最想要的?和当从未创建此文件时,为什么目标文件会出现异常 注意:复制的文件是否为只读我不在乎,这很容易修复您的诊断不正确。文件复制永远不会失败,因为源是只读的。如果现有目标文件为只读,则文件复制将失败。简单
System.IO.File.Copy
失败
复制到我得到一个错误:
对路径
的访问被拒绝。
(系统。未经授权的访问例外)
我有一个场景,在修改模板文件之前将其复制到目标路径,为了安全起见,我希望模板是只读的
为什么我不能以这种方式复制只读文件,如何才能轻松/明智地实现我最想要的?和当从未创建此文件时,为什么目标文件会出现异常
注意:复制的文件是否为只读我不在乎,这很容易修复您的诊断不正确。文件复制永远不会失败,因为源是只读的。如果现有目标文件为只读,则文件复制将失败。简单的补救方法是在复制之前清除目标文件上的只读属性。sll的回答解释了如何做到这一点: 最有可能发生的情况是:
system.io.file.copy中没有任何内容阻止您处理只读文件,我想您的问题在于目标。因为您的文件是只读的,所以会复制readonly属性。接下来,尝试使用readonly属性覆盖目标,但失败。复制文件之前,请检查目标位置是否有文件 对路径的访问被拒绝。 (系统。未经授权的访问例外)
表示您无权访问目标文件夹。你在应付c:\?确保用户具有写入目标文件夹的权限 只读不会阻止您复制文件,但会阻止您移动文件。目标是只读的,或者您没有源文件的读取权限。请更正。我没有看到文件,因为在复制时,保留了原始时间戳,所以我没有看到它出现(文件名都非常相似),然后文件修改失败,所以它没有更改时间戳。谢谢