1
0
mirror of https://github.com/Artemis-RGB/Artemis synced 2025-12-13 05:48:35 +00:00
Artemis/src/Artemis.Core/Extensions/DirectoryInfoExtensions.cs
Robert Beekman f1b5961f0b For now, added all Corsair resources to the plugin's project
Added Glaive layout
Added K95 US layout
2019-08-21 17:31:24 +02:00

32 lines
962 B
C#

using System.IO;
namespace Artemis.Core.Extensions
{
public static class DirectoryInfoExtensions
{
public static void CopyFilesRecursively(this DirectoryInfo source, DirectoryInfo target)
{
foreach (var dir in source.GetDirectories())
CopyFilesRecursively(dir, target.CreateSubdirectory(dir.Name));
foreach (var file in source.GetFiles())
file.CopyTo(Path.Combine(target.FullName, file.Name));
}
public static void RecursiveDelete(this DirectoryInfo baseDir)
{
if (!baseDir.Exists)
return;
foreach (var dir in baseDir.EnumerateDirectories())
RecursiveDelete(dir);
var files = baseDir.GetFiles();
foreach (var file in files)
{
file.IsReadOnly = false;
file.Delete();
}
baseDir.Delete();
}
}
}