2009-10-20 14 views
8

en Java, las operaciones comunes que implican flujos de IO, archivos y similares pueden ser algo molesto. Por lo tanto, yo (y muchos otros) tienden a buscar cosas como bienes comunes para aliviar el dolor.idiomático IO con Scala

En scala: hay algunas mejores expresiones/clases/bibliotecas para usar (conozco Scala.io.Source, etc. para leer en archivos de texto, pero ¿qué pasa con las transmisiones, etc.). ¿Es "normal" utilizar bibliotecas como commons-io en scala o hay una forma mucho mejor?

Respuesta

4

Hubo algunas discusiones en la lista de correo de Scala en este asunto en particular. Y, si mal no recuerdo, no salió nada concreto de ellos. Mientras tanto, no tendrás problemas para consultar Scalax. scalax.io parece muy prometedor.

+0

¿El enlace anterior está desactualizado? Cuando tengo acceso, simplemente dice "¡No funciona!" –

+0

Scala io se puede encontrar en https://github.com/jesseeichar/scala-io – hvrauhal

5

Qué acerca del uso:

Source.fromInputStream(is, "UTF8") 

como en:

for (line <- Source.fromInputStream(is, "UTF8").getLines) { 
    // process line here 
} 
+0

Sí que sabía de eso, pero su único adecuado para archivos de texto/fuente, que no es un API general de IO. –

+0

@michael: preguntaste específicamente sobre cualquier cosa en Scala para manejar IO con transmisiones. Realmente no creo que la respuesta merezca el voto en contra. Es perfectamente legítimo utilizar esto con cualquier flujo de texto subyacente (por ejemplo, desde un socket). –

1

E/S no se ha abordado hasta el momento en Scala. Lo que existe, existe únicamente para soportar el compilador y la biblioteca XML.

0

scalax de Erik Engbrecht fork podría ser útil.

Cuestiones relacionadas