У меня есть консольное приложение C#, которое получает все файлы в каталоге. Принимая имя файла ниже в качестве примера, и учитывая, что у меня будет 3 строки, реф, Год1, YEAR2, как я мог бы сказать:получить файлы из каталога на основе подстроки имени файла - C#
Имя файла: 31596_2015-06-30.pdf
Дайте мне все файлы, в которых содержат имя файла ref И имя файла содержит год между 1-м и 2-м годами? код до сих пор:
var files = Directory.EnumerateFiles(sourceDir, "*", SearchOption.TopDirectoryOnly)
.Select(Path.GetFileName);
string start_year = null;
string end_year = null;
string ref = null;
// dr is a sql data reader
if (dr.HasRows == true)
{
while (dr.Read())
{
start_year = dr.GetString(1).Substring(7, 4);
end_year = dr.GetString(2).Substring(7, 4);
ref = dr.GetString(3);
foreach(string filename in files)
{
if (filename.Contains(ref))
{
File.Copy(sourceDir + filename, targetDir + filename);
}
}
File.Copy(sourceDir + dr.GetString(0), targetDir + dr.GetString(0));
}
}
См. Edit, dr является datareader – DarkW1nter
ref является ключевым словом, поэтому я бы предложил предложить лучшее имя для этой переменной – Sorceri