public static void CopyPackFiles()
{
var SB = new StringBuilder();
bool Exists = Directory.Exists(@"C:\GamePack");
try
{
if (!Exists)
{
Directory.CreateDirectory(str2 + folder);
foreach (var file in new DirectoryInfo(GetPath()).GetFiles("*.d3d", SearchOption.TopDirectoryOnly))
{
file.CopyTo(Path.Combine(str2, file.Name));
}
foreach (var file2 in new DirectoryInfo(GetPath() + folder).GetFiles("*.ini", SearchOption.TopDirectoryOnly))
{
file2.CopyTo(Path.Combine(str2 + folder, file2.Name));
}
}
}
catch (IOException e) { SB.AppendLine(e.ToString()); }
catch (SecurityException e) { SB.AppendLine(e.ToString()); }
catch (Exception e) { SB.AppendLine(e.ToString()); }
File.WriteAllText("Error.log", SB.ToString());
}
Как сделать копирование файлов в 1 часть папки, а 2 часть во внутреннею папку с использование Linq ?
Можно ли обойтись без вторичного цикла ( где копируется во внутреннею папку файлы)?!
Нужно ли использовать в этом примере Task ?
string targetBaseFolder = str2;
string targetSubFolder = Path.Combine(targetBaseFolder, folder); // один раз, а не в цикле
Directory.CreateDirectory(targetSubFolder);
string sourceFolder = GetPath();
string sourceSubfolder = Path.Combine(sourceFolder, folder);
CopyFiles(sourceFolder, targetBaseFolder, "*.d3d");
CopyFiles(sourceSubfolder, targetSubFolder, "*.ini");
private static void CopyFiles(string from, string to, string searchPattern)
{
// SearchOption.TopDirectoryOnly - значение по умолчанию
foreach (var file in Directory.GetFiles(from, searchPattern))
{
File.Copy(file, Path.Combine(to, Path.GetFileName(file)));
}
}
LINQ не нужен. Task - в зависимости от того, кто вызывает этот код, и ожидает ли он асинхроности
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Здравствуйте! Я хочу создать приложение для ПК на C# я сам пока новичокДля графического интерфейса я выбрал windows forms Приложение основывается...
Господа, помогите реализовать грамотное обновление данных