首先;最佳做法是获取用户桌面文件夹
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
然后你可以找到所有类似的文件
string[] files = Directory.GetFiles(path, "*.txt", SearchOption.AllDirectories);
请注意,通过上述行,您将在登录用户的桌面文件夹和所有子文件夹中找到所有扩展名为 .txt 的文件。
然后您可以通过枚举上述集合来复制或移动文件,例如
// For copying...
foreach (string s in files)
{
File.Copy(s, "C:\newFolder\newFilename.txt");
}
// ... Or for moving
foreach (string s in files)
{
File.Move(s, "C:\newFolder\newFilename.txt");
}
请注意,您必须在Copy()
(或Move()
)操作中包含文件名。因此,您必须找到一种方法来确定至少您正在处理的扩展名的文件名,而不是像上面示例中那样命名所有文件。
考虑到这一点,您还可以查看DirectoryInfo
和FileInfo
类。这些以类似的方式工作,但您可以更轻松地获取有关路径/文件名、扩展名等的信息
查看这些以获取更多信息:
http://msdn.microsoft.com/en-us/library/system.io.directory.aspx
http://msdn.microsoft.com/en-us/library/ms143316.aspx
http://msdn.microsoft.com/en-us/library/system.io.file.aspx