C# 未经授权的访问异常-将文件复制到C中的其他目录时,对路径的访问被拒绝#
将文件从1个文件夹复制到c#中的另一个文件夹时出错。 代码如下:C# 未经授权的访问异常-将文件复制到C中的其他目录时,对路径的访问被拒绝#,c#,file,directory,C#,File,Directory,将文件从1个文件夹复制到c#中的另一个文件夹时出错。 代码如下: string xFilename = Path.GetDirectoryName(fdlg.FileName.ToString()); string yPath = Path.GetFileName(fdlg.FileName.ToString()); upload_label.Text = xFilename + "\\" + yPath; string zFilePath = xFilename + "
string xFilename = Path.GetDirectoryName(fdlg.FileName.ToString());
string yPath = Path.GetFileName(fdlg.FileName.ToString());
upload_label.Text = xFilename + "\\" + yPath;
string zFilePath = xFilename + "\\" + yPath;
Directory.CreateDirectory("test");
try
{
File.Copy(zFilePath, "\\test", true);
}
catch(Exception eeee)
{
MessageBox.Show(eeee + "");
throw;
}
如何修复此问题?MSDN()表示File.Copy
在
调用方没有所需的权限
-或-
文件名是只读的
请检查上述条件,然后重试。如果您有分包合同,这与分包合同有关,就像我的情况一样 这就是我所做的,也许你可以尝试以下步骤: 1.)首先通过删除该路径上的文件和文件夹来删除内容 2.)然后在文件夹为空后删除文件夹本身
var di = new DirectoryInfo("YourPath");
//delete files
foreach (FileInfo file in di.GetFiles())
{
file.Delete();
}
//delete folders
foreach (DirectoryInfo dir in di.GetDirectories())
{
dir.Delete(true);
}
//then delete the path itself after it is empty
Directory.Delete(path);
访问文件夹?请帮你自己一个忙…将变量重命名为有意义的…好的。我会重新命名它。sorryso,除了File.Copy之外还有其他方法吗?@user3541736如果你没有权限…你没有权限。圆点。不管你做什么都要复制。顺便说一句,你没有说它在哪里失败(它甚至可能是CreateDirectory)。第二:你用相对路径创建目录,但用绝对路径访问。在寻找替代方法之前,你应该了解出了什么问题,因为框架通过抛出一个异常来帮助你,它只显示了这样做的两个原因。您是否有权限在要写入的目录中写入?是否已检查已存在的同名文件是否为只读文件?您是否尝试过删除该文件,然后重试?验证路径。我的文件。复制失败,因为目标位置已存在该文件。