rendered paste bodyprivate void fRecursiva (string origen, string destino)
{
string[] ficheros, directorios;
string nombre, carpeta;
int nficheros, ndirectorios;
//copio todos los ficheros:
nficheros = Directory.GetFiles(origen).GetLength(0);
if (nficheros > 0)
{
ficheros = Directory.GetFiles(origen);
for (int i = 0; i < Directory.GetFiles(origen).Length; i++)
{
nombre = Path.GetFileName(ficheros[i]);
File.Copy(ficheros[i], destino + "\\" + nombre, true);
}
}
//entro en los directorios
ndirectorios = Directory.GetDirectories(origen).GetLength(0);
if ( ndirectorios > 0)
{
directorios = Directory.GetDirectories(origen);
for (int i = 0; i < Directory.GetDirectories(origen).Length; i++)
{
carpeta = Path.GetFileName(directorios[i]);
Directory.CreateDirectory(destino + "\\" + carpeta);
fRecursiva(directorios[i], destino + "\\" + carpeta);
}
}
}