tutorial started software getting example scala

started - scala vs java



Leyendo archivos de un directorio en Scala (4)

¿Cómo obtengo la lista de archivos (o todos los archivos * .txt, por ejemplo) en un directorio en Scala? La clase Fuente no parece ayudar.


La clase de archivos Java es realmente todo lo que necesita, aunque es bastante fácil agregar algo de bondad de Scala a la iteración sobre directorios más fáciles.

import scala.collection.JavaConversions._ for(file <- myDirectory.listFiles if file.getName endsWith ".txt"){ // process the file }


La versión JDK7, utilizando la nueva clase DirectoryStream es:

import java.nio.file.{Files, Path} Files.newDirectoryStream(path) .filter(_.getFileName.toString.endsWith(".txt")) .map(_.toAbsolutePath)

En lugar de una cadena, esto devuelve una Ruta, que tiene muchos métodos prácticos, como ''relativizar'' y ''subpath''.

Tenga en cuenta que también deberá importar import scala.collection.JavaConversions._ para habilitar la interoperabilidad con las colecciones Java.


Por ahora, deberías usar las bibliotecas de Java para hacerlo.


new java.io.File(dirName).listFiles.filter(_.getName.endsWith(".txt"))