Copiar una estructura de directorios a otra
Publicado por Races (25 intervenciones) el 27/02/2006 16:47:11
Hola amigos, mi problema es el siguiente:
quiero a partir de una ruta dada copiar a partir de ahi todos los archivos y carpetas a otra directorio.
if((total_archivos = _findfirst(ruta, &archivo))==-1)
{
printf("Directorio incorrecto: %s \n", ruta);
return -1;
}
else
{
do
{
if((esDirectorio(archivo.attrib))== 1)
{
printf("DIRECTORIO --> %s \n", archivo.name);
}
else
printf("Archivo -> %s \n", archivo.name);
}while(!_findnext(total_archivos, &archivo));
} // FIN IF
Esto lo utilzo para leer la información en un directorio dado por ruta, despues lo que hago es it añadiendo a una variable el directorio y llamar a esta función recursivamente y cuando es un directorio llamo a una función q crea el directorio y si es un archivo a otra q lo copia en la ruta especificada. Pero llega un momento que si la estrutura tiene una profundidad de 4 subdirectorios no copia los ficheros, pero lo extraño es q si crea la carpeta, porque no encuentra la ruta ya que la variable en la que almaceno la ruta parace que se borra y se almacena solo el directorio ultimo, por lo cual no encuentra la ruta en donde copiar. Hay alguna manera de hacerlo más directo? o como puedo solucionar el problema supongo que sera algo a la hora de reservar memoria para esa variable
GRACIAS POR VUESTRA AYUDA.
quiero a partir de una ruta dada copiar a partir de ahi todos los archivos y carpetas a otra directorio.
if((total_archivos = _findfirst(ruta, &archivo))==-1)
{
printf("Directorio incorrecto: %s \n", ruta);
return -1;
}
else
{
do
{
if((esDirectorio(archivo.attrib))== 1)
{
printf("DIRECTORIO --> %s \n", archivo.name);
}
else
printf("Archivo -> %s \n", archivo.name);
}while(!_findnext(total_archivos, &archivo));
} // FIN IF
Esto lo utilzo para leer la información en un directorio dado por ruta, despues lo que hago es it añadiendo a una variable el directorio y llamar a esta función recursivamente y cuando es un directorio llamo a una función q crea el directorio y si es un archivo a otra q lo copia en la ruta especificada. Pero llega un momento que si la estrutura tiene una profundidad de 4 subdirectorios no copia los ficheros, pero lo extraño es q si crea la carpeta, porque no encuentra la ruta ya que la variable en la que almaceno la ruta parace que se borra y se almacena solo el directorio ultimo, por lo cual no encuentra la ruta en donde copiar. Hay alguna manera de hacerlo más directo? o como puedo solucionar el problema supongo que sera algo a la hora de reservar memoria para esa variable
GRACIAS POR VUESTRA AYUDA.
Valora esta pregunta


0