2011-08-11 9 views
10

¿Alguien tiene una guía para esto, que contiene muestras de código, consejos y un resumen de los diferentes enfoques de IO?¿Guía para scala.io y IO simple para Scala 2.9?

He comprobado the API documentation. También hay algunos ejemplos básicos con scala.io.Source en Programming in Scala.

Hay algunas preguntas bastante básicas ya respondidas aquí en SO.

Estoy buscando algo más a fondo.

De forma alternativa, ¿alguna sugerencia sobre exactamente qué partes de la documentación de la API se deben enfocar y qué bibliotecas de Java? Estoy familiarizado con System.IO en .NET land, pero no tanto con Java.

Respuesta

5

La biblioteca estándar de Scala es actualmente bastante limitada para E/S, por lo que probablemente desee profundizar en las bibliotecas de Java. El Basic I/O tutorial de Oracle, que cubre java.nio, parece un punto de partida razonable.

Hace un tiempo hubo un debate sobre un rediseño impulsado por la comunidad de Scala I/O llamado scala-io, pero no estoy seguro del estado oficial. La lista de correo no ha visto mucha actividad reciente, pero el código en Github se está desarrollando activamente (incubadora mailing list y Github project). En su respuesta, hishadow dio un enlace al scala-iodocumentation.

+1

No olvidemos que se puede obtener Scala para .NET que debe ser capaz de use System.IO al igual que cualquier otra aplicación .NET. –

+0

@Michael Se está mejorando rápidamente, pero ¿sabes si .NET se puede utilizar en este momento? –

+0

@Kipton Barros: Puede compilarse, y 'scalac' es una pieza bastante grande y compleja de código Scala. El mayor problema será el código de Scala que no depende exclusivamente de las bibliotecas de Scala, es decir, que tiene dependencias en las bibliotecas de Java. –

4

Mi consejo es mirar también en las herramientas Path, File y Directory.

Ellos tienen poco de azúcar (que cada uno tiene en sus pequeñas utilidades biblioteca) como:

val writer = File("/my/file").bufferedWriter 
File.closeQuietly(writer) 
Directory("myDir").walk 

A continuación, echar un vistazo a Process like here

+4

No recomendaría clases internas del compilador, pueden cambiar a voluntad. – soc

+0

para scripts descartables, algo que hago a menudo, es bueno no necesitar un jar adicional. Sí, en programas reales es malo. –

2

Recomiendo mirar java.nio.

Debido a las limitaciones técnicas de la plataforma Java subyacente, la implementación de IO en Scala no era una buena idea.

Esto ha cambiado con Java 7, que proporciona buenas API de Java para todo lo relacionado con la gestión de archivos.

Existen algunas consideraciones acerca de una biblioteca de IO para Scala, pero aún no hay una decisión al respecto.

Cuestiones relacionadas