Dudas de planteamiento con File para Backup
Publicado por Code (2 intervenciones) el 05/04/2016 15:34:05
Hola comunidad! Tengo una duda de planteamiento con un pequeño proyecto que estoy haciendo, a ver si podéis aconsejarme (no necesito líneas de código, sólo algún consejo de cómo mejorar mi planteamiento)
Me he planteado hacer un pequeño programa que me haga un Backup de mis *.java en mi carpeta de Workspace y los copie en otro sitio. Partiendo de _fOrigen, guardo los ficheros listados en un array arrPathO.
El método cuantosHijos me dice la longitud del array o en número de elementos en la carpeta de origen.
La idea actual es que por cada una de las carpetas contenidas, debiese crear un Thread que me fuese recorriendo esa carpeta de manera independiente. El INCONVENIENTE:
Al arrancar el Thread; este, obtendrá las carpetas del nivel inferior. Pero sigo hallándome en la misma situación: ¿Y si los proyectos *.java no están aquí? Tendría que crear otro Thread para adentrarme otra vez en las subcarpetas.
No quiero escribir un código redundante de cincuenta bucles for.
En la versión anterior era lo que había hecho, y es una chapuza.
Por otro lado tendo pequeños métodos de comprobación como: “esJava”(Donde comprueba si el fichero es un archivo, y en caso de serlo comprueba si termina en *.java. Pero sólo me sirve si ya estoy en la carpeta final). Y otro método que descarta carpetas con un punto como carácter de inicio (son dos, autogeneradas por Eclipse), y estas son descartadas de ser recorridas por el Thread.
¿Podríais darme algún consejo al respecto del planteamiento? Me siento algo estancado.
PD: Es cierto que para hacer la copia puedo ir a la carpeta y Ctrl+C/Ctrl+V, pero no es lo que busco. Tengo entendido también que Github sincroniza lo que hago con mi IDE, pero tampoco estoy buscando eso.
Muchas gracias por su atención. Cualquier sugerencia es bienvenida. Si hace falta que suba algo más de código de muestra, por si no me he expresado con claridad, lo haré.
Me he planteado hacer un pequeño programa que me haga un Backup de mis *.java en mi carpeta de Workspace y los copie en otro sitio. Partiendo de _fOrigen, guardo los ficheros listados en un array arrPathO.
1
2
3
4
5
6
7
8
9
10
11
12
13
public class Lector {
File _fOrigen = new File("C:\\Users\\ElUsuario\\workspace");
File _fDestino = new File("C:\\Users\\ElUsuario\\Google Drive");
File[] arrPathO;
byte nArrayPadre;
public Lector() {
}
public byte cuantosHijos(File _fOrigen){
arrPathO = _fOrigen.listFiles();
nArrayPadre = (byte)arrPathO.length;
return nArrayPadre;
}
}
La idea actual es que por cada una de las carpetas contenidas, debiese crear un Thread que me fuese recorriendo esa carpeta de manera independiente. El INCONVENIENTE:
Al arrancar el Thread; este, obtendrá las carpetas del nivel inferior. Pero sigo hallándome en la misma situación: ¿Y si los proyectos *.java no están aquí? Tendría que crear otro Thread para adentrarme otra vez en las subcarpetas.
No quiero escribir un código redundante de cincuenta bucles for.
En la versión anterior era lo que había hecho, y es una chapuza.
Por otro lado tendo pequeños métodos de comprobación como: “esJava”(Donde comprueba si el fichero es un archivo, y en caso de serlo comprueba si termina en *.java. Pero sólo me sirve si ya estoy en la carpeta final). Y otro método que descarta carpetas con un punto como carácter de inicio (son dos, autogeneradas por Eclipse), y estas son descartadas de ser recorridas por el Thread.
¿Podríais darme algún consejo al respecto del planteamiento? Me siento algo estancado.
PD: Es cierto que para hacer la copia puedo ir a la carpeta y Ctrl+C/Ctrl+V, pero no es lo que busco. Tengo entendido también que Github sincroniza lo que hago con mi IDE, pero tampoco estoy buscando eso.
Muchas gracias por su atención. Cualquier sugerencia es bienvenida. Si hace falta que suba algo más de código de muestra, por si no me he expresado con claridad, lo haré.
Valora esta pregunta
0