Foros del Web » Programación para mayores de 30 ;) » Java »

problemas con DataOutputStram

Estas en el tema de problemas con DataOutputStram en el foro de Java en Foros del Web. Tengo una consulata sobre DataInputStram cuando hago para escribir un archivo sale cuadritos y este es el codigo qeu hago: ...... File f=new File(cuenta.txt); DataOutputStram ...
  #1 (permalink)  
Antiguo 15/11/2006, 11:31
 
Fecha de Ingreso: noviembre-2006
Mensajes: 27
Antigüedad: 17 años, 5 meses
Puntos: 0
problemas con DataOutputStram

Tengo una consulata sobre DataInputStram cuando hago para escribir un archivo sale cuadritos y este es el codigo qeu hago:
......
File f=new File(cuenta.txt);
DataOutputStram d=new DataOutputStram(new FileInputStream(f));
//por ejemplo

d.WriteUTF("matematicas");
d.WriteInt(4);
d.close();
.....

cuando veo mi archivo creado me sal
♦ ♦ ♦ ♦ ♦..
asi me sale pero cuando pongo por ejemplo con
d.WriteBytes("matematicas");
si sale ene le archivo el nombre esta correcto y esa es mi pregunta a qeu se debe eso si el metodo UTF es para cadenas ojala me puedan explicar mi ignorancia gracias
  #2 (permalink)  
Antiguo 15/11/2006, 11:53
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Cuando escribes a través de un Stream y más con DataOutputStream el fichero en si no es un fichero de texto, asi que mirarlo con un editor de texto no es indicativo.

Si lo puedes leer a través de un DataInputStream, es que está bien guardado.
  #3 (permalink)  
Antiguo 15/11/2006, 21:46
 
Fecha de Ingreso: noviembre-2006
Mensajes: 27
Antigüedad: 17 años, 5 meses
Puntos: 0
Ya encontre una explicacion

Efectivamente, writeUTF() es para cadenas, pero el resultado no es visible para los humanos. La mejor forma de comprobar si esta bien es que con java lo leas y utilices el método readUTF().

Si quieres escribir un fichero binario (no legible para los humanos o leible con notepad o similar), van bien las clases OutputStream e InputStream (cualquier clase que lleve eso). Lo que escribas en el fichero con java, sólo podrás leerlo con java.

Si quieres un fichero que se pueda leer desde notepad, usa clases Writer o Reader (clases hijas hereden de ellas, como PrintWriter o BufferedReader). Suelen tener métodos para leer y escribir String en formato claro para notepad.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:06.