Java - Validar Ruta

 
Vista:
Imágen de perfil de Franklin
Val: 456
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Validar Ruta

Publicado por Franklin (179 intervenciones) el 28/03/2020 14:38:17
Chicos una consulta, con un pequeño sistema que he desarrollado y en él tengo la necesidad de Guardar Archivos y configuración de mis usuarios de acuerdo lo vayan necesitando / creando.

Originalmente no tengo una estructura de carpetas porque estas dependen del nombre del usuario, los clientes y el tipo de operación que realicen.

Por lo que, realice un método que de acuerdo a una ruta x, se encarga de verificar que exista cada una de las carpetas en su ramificación, en caso que una carpeta no la encuentre, este la crea pero si existe omite y continua.

Lo publico para ver si conocen un mejor método para realizar esta tarea, a mi me funciona pero dudo que sea la mejor forma de hacerlo.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public void validarRuta(String ruta) {
 
    String problema = "\\\\"; // Para saber que apunta de frente a una unidad de red
    String separador = Pattern.quote("\\");//Separador a utilizar "\"
    String[] s = ruta.split(separador);//Realizamos la separacion de la ruta de acuerdo al Separador
 
    int h = 0;//Contador inicial del for, este queda así en caso de ser ruta normal, aumenta a 2 si la ruta es en Red
    String temp = "";
 
    temp = ruta.substring(0, 2);//Extramos los primeros valores de ruta
 
 
    boolean llave = false; // false significa que es una ruta normal, sin apuntar de frente al servidor
    if ((temp).equals(problema)) { // Preguntamos si el primer fragmento = problema, for inicia en 2 y llave=true (ruta de red)
        h = 2;
        llave = true;
    }
    temp = ""; // Limpiamos temp para ir construyendo la ruya y crear la carpeta en cada iteración
    for (int i = h; i < s.length; i++) {
        if (h != 0 && i == h) {
            temp += "\\\\" + s[i] + "\\";
 
        } else {
            temp += s[i] + "\\";
 
        }
        //Llave inicia false, solo cambia  a true cuando se detecta que la ruta es directo a unidad de red y posee "\\NameServidor\
        if (llave == false && i >= 1) {//Si es ruta normal la posicion 0 es la letra de la unidad de red, y luego la carpeta por eso i>=1 "c:\"
            crearCarpeta(temp);
        } else if (i >= 3) { // en caso de ser una unidad de red, crea la carpeta a partir de la iteración 3, que es cuando empeiza la carpeta
            crearCarpeta(temp);
        }
    }
 
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Franklin
Val: 456
Bronce
Ha mantenido su posición en Java (en relación al último mes)
Gráfica de Java

Validar Ruta

Publicado por Franklin (179 intervenciones) el 30/03/2020 16:41:36
>.< Me siento tan tonto por no leer la documentación. jajajaja que idiota. Gracias tom
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar