Ver Mensaje Individual
  #9 (permalink)  
Antiguo 29/01/2010, 12:58
Avatar de Xerelo
Xerelo
 
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 15 años
Puntos: 306
Respuesta: DataInputStream + BufferedReader ¿Cómo?

Como se puede ver en el código que puse al inicio, lo estaba guardando con OutputStream, y como ya he dicho, mi objetivo no era escribir y recuperar una línea de un fichero, sino probar el funcionamiento de los DataStream en concreto.

No digo que tenga que leerse la String de tal o cual manera, pero a mí me parece un fallo/carencia de la API de DataInputStream, que te recomienden usar el método readLine() de BufferedStream para leer líneas, sin especificar que sólo es válido para contenido String y sin comentar que el método de escritura debe ser writeBytes().

Teniendo en cuenta que existe un writeChars() que admite String como parámetro, creo que es fácil confundirse y llegar a la conclusión de que el método adecuado es writeChars(), sobre todo porque existe un método para leer arrays de bytes, así que la relación Bytes-String parece menos inmediata que Char-String.

char => writeChar => readChar
int => writeInt => readInt
byte => writeByte => readByte

String => writeByte => readLine

No, no parece muy evidente.