问题背景:
我需要将文件从一个文件夹位置复制并粘贴(移动)到另一个文件夹位置。
的问题: 的
File.Copy
的{{1}}方法要求两个参数都是已知的文件位置。我只知道一个文件路径位置 - 在本例中为System.IO
。 localDevPath
是我希望移动复制文件的文件夹路径。
localQAPath
任何人都可以告诉我如何执行我正在尝试实施的“复制和粘贴”方法。
答案 0 :(得分:2)
string localDevPath = @"C:\Folder1\testFile.cs";
string localQaPath = @"C:\Folder2\";
FileInfo fi = new FileInfo(localDevPath);
fi.MoveTo(Path.Combine(localQaPath, fi.Name));
答案 1 :(得分:1)
假设这些是用户提供的路径,并且您不能简单地在第二个路径中包含文件名,那么您需要从localDevPath
中提取最后一个路径元素,然后将其添加到localQaPath
。你可以用Path.GetFilename
来做到这一点。
答案 2 :(得分:0)
我猜这里的问题是文件名是可变的,在这种情况下,你可以做类似的事情从localDevPath的完整路径中提取文件名:
string localDevPath = @"C:\Folder1\testFile.cs";
string localQaPath = @"C:\Folder2\";
string[] tokens = localDevPath.Split(@"\");
localQaPath += tokens[tokens.Length-1];
File.Copy(localDevPath, localQaPath);
File.Copy上的文档位于MSDN。有一个接受布尔值的重载,如果存在命名冲突,则允许覆盖。
答案 3 :(得分:0)
如果您要执行的操作是将文件从一个位置移动到另一个位置,那么您要查找的方法是MoveTo。它是FileInfo类的一种方法。这里有一个非常完整的MSDN库示例:FileInfo.MoveTo Example