Imaginemos que tenemos un proceso que lee ciertos archivos que tenemos en un directorio de nuestro servidor. Necesitamos encontrar esos archivos para poder procesarlos, y todos ellos cumplen el mismo patrón: empiezan por “log” y tienen extensión “.txt”.

Veamos en el siguiente fragmento de código cómo dado un directorio, podemos encontrar todos los archivos que empiezan por “log”:

1
def directory = new File("\opt")
2
if (directory.exists()){
3
    println directory.listFiles(
4
        {File dir, String file-> file.startsWith("log") && file.endsWith(".txt"} as FilenameFilter
5
    )
6
}

El método startsWith nos permite encontrar aquellos archivos cuyo nombre empieza por una cadena determinada. El método endsWith nos permite encontrar aquellos archivos cuyo nombre termina con un sufijo o una extensión determinados.

Estos métodos se utilizan de la siguiente manera:

1
assert "hola".startsWith("ho")
2
assert "hola".endsWith("la")
3

 

Etiquetas: , , ,

Deja tu comentario


6 − 2 =