Hello guys, I wrote a function that copies the content from one file path to another using recursion
static void Main(string[] args)
{
string RutaOrigen = @"C:\Users\MrRobot\Desktop\New Folder 1";
string RutaDestino = @"C:\Users\MrRobot\Desktop\New Folder 2";
CopiarFiles(RutaOrigen, RutaDestino);
}
public static void CopiarFiles(string carpetaOrigen, string carpetaDestino)
{
// check si carpeta de destino existe
if (!Directory.Exists(carpetaDestino)) Directory.CreateDirectory(carpetaDestino);
// obtiene files dentro de carpeta de origen
string[] files = Directory.GetFiles(carpetaOrigen);
// itera a través de cada file
foreach (string file in files)
{
// obtiene nombre del file(sin la ruta)
string name = Path.GetFileName(file);
// obtiene nombre del file + la ruta de destino
string dest = Path.Combine(carpetaDestino, name);
// intenta copiar file, si file existe, salta la iteración
try
{
File.Copy(file, dest);
}
catch
{
continue;
}
}
// Obtener folders dentro de carpeta de origen
string[] folders = Directory.GetDirectories(carpetaOrigen);
// itera a través de cada folder
foreach (string folder in folders)
{
// obtiene nombre del folder (sin la ruta)
string name = Path.GetFileName(folder);
// obtiene nombre del folder + la ruta de destino
string dest = Path.Combine(carpetaDestino, name);
// intenta copiar el folder y contenidos recursivamente, si folder existe, salta la iteración
try
{
CopiarFiles(folder, dest);
}
catch
{
continue;
}
}
}
I would like to know how could I implement this code inside an Invoke code activity. The reason I am using recursion and not e.g the CopyDirectory VB method is because I do not want to overwrite the files(and folders) that already might exist in the destination folder, i.e I am just copying the files (and folders) that do not exist yet in the destination folder. Thanks in advance