文件夹 1:
C:\File1-xpt
C:\File1-ppt
C:\File1-zzz
C:\File2-ndo
C:\File2-dkl C:\
File2-dlz
string[] AllFilesInDirectory = Directory.GetFiles(SelectedDirectory);
我想将前缀为“File1”的所有文件移动到文件夹 2 中。
文件夹 1:
C:\File1-xpt
C:\File1-ppt
C:\File1-zzz
C:\File2-ndo
C:\File2-dkl C:\
File2-dlz
string[] AllFilesInDirectory = Directory.GetFiles(SelectedDirectory);
我想将前缀为“File1”的所有文件移动到文件夹 2 中。
var query = AllFilesInDirectory.Where(x => Path.GetFileName(x).StartsWith("File1"));
foreach (string file in query)
{
File.Move(file, @"C:\Folder2");
}
编辑:基于评论。如果只知道子字符串,则可以使用Contains
. 请注意使用 of Path.GetFileNameWithoutExtension
,因为如果您正在搜索包含“txt”的文件(在这种情况下,只有第一个文件会匹配),这将能够处理像“txtFile1.txt”和“File1.txt”这样的文件名
var query = AllFilesInDirectory
.Where(x => Path.GetFileNameWithoutExtension(x).Contains("File1"));
foreach (string file in query)
{
File.Move(file, @"C:\Folder2");
}