Ver Mensaje Individual
  #10 (permalink)  
Antiguo 07/05/2011, 05:48
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años, 7 meses
Puntos: 306
Respuesta: java.io.filenotfoundexception

Tienes la solución fácil

Cita:
FilenameUtils.getName(filename)
Evidentemente, los de apache saben que este problema se va a presentar, y han añadido un método para corregirlo.

De forma manual y que sirve para aprender un poco más

\ se utiliza como elemento para escapar otros caracteres, por lo que para evitar ambigüedades, cuando quieres escribir el caracter \ tienes que usar \\
Cita:
StringTokenizer g = new StringTokenizer(ruta, "\\");
Y curiosamente, si quieres usar el método split(), por ser el parámetro una regex
Cita:
ruta.split("\\\\")
La regex se convierte en String, por lo que para tener una String "\\" necesitas escapar dos barras. No me parece que esto tenga mucha lógica, pero será por el funcionamiento de las regex.


Luego tienes el problema de que en función de qué servidor uses, esto no vale para Linux.

FilenameUtils ya lo tiene en cuenta, pero para que tu código "manual" sea independiente del SO del servidor

Cita:
StringTokenizer g = new StringTokenizer(ruta, File.separator)
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.