Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: Black Demon en 18 Agosto 2007, 19:30 PM

Título: Contador en java
Publicado por: Black Demon en 18 Agosto 2007, 19:30 PM
olaa

estoy creando un contador en java, utilizando un fichero para guardar el numero, mi duda es cual es la mejor forma de leer ese numero del fichero???

salu2
Título: Re: Contador en java
Publicado por: Ragnarok en 18 Agosto 2007, 20:58 PM
Lee acerca de "serializable".

Otras opciones son estas dos clases:
http://java.sun.com/j2se/1.4.2/docs/api/java/io/ObjectInputStream.html
http://java.sun.com/j2se/1.4.2/docs/api/java/io/ObjectOutputStream.html

Otra opción es que lo guardes en un fichero de texto plano e implementes todo tu mismo o que utilices ficheros xml.
Título: Re: Contador en java
Publicado por: Black Demon en 18 Agosto 2007, 21:42 PM
lo unico q me falta es poder leer el numero guardado en el archivo de texto...al leer el numero le sumo 1 y guardo el nuevo numero con la funcion RandomAccessFile....no e podido dar con una buena forma para leer el int q esta guardado en el archivo...

Con este codigo lo pude leer....pero no me convence...
int c;
FileInputStream f = new FileInputStream("cont.txt");

while ((c = f.read()) != -1)
System.out.print((char) c);
f.close();
Título: Re: Contador en java
Publicado por: Ragnarok en 18 Agosto 2007, 23:52 PM
Si lo guardas así lo tendrás que leer como lo estás haciendo.

Lo que te digo son formas de guardarlo distinto para que al leerlo sea más fácil.

Échale un vistazo a los enlaces y a este http://java.sun.com/j2se/1.4.2/docs/api/java/io/package-summary.html
Título: Re: Contador en java
Publicado por: egyware en 20 Agosto 2007, 21:52 PM
oye has intentado pasarlo al constructor Integer y luego tomar intValue();
asi te queda un int para trabajarlo como quieres pero prueba con serializacion como dijo ragnarok
Título: Re: Contador en java
Publicado por: Yshua en 21 Agosto 2007, 20:29 PM
a ver te doy varias opciones
escribir
Código (java) [Seleccionar]

int num=10;
PrintWriter pw=new PrintWriter(new BufferedWriter(new FileWriter("archivo")));
pw.println(num);
pw.close();



leer
Código (java) [Seleccionar]

int num;
BufferedReader leer=new BufferedReader(new FileReader("archivo"));
num=Integer.parseInt(leer.readLine());


otra forma sería esta

escribir
Código (java) [Seleccionar]

int x=10;
DataOutputStream escribe=new DataOutputStream(new FileOutputStream("archivo"));
escribe.writeInt(x);
escribe.close();


leer
Código (java) [Seleccionar]

int x;
DataInputStream leer=new DataInputStream(new FileInputStream("archivo"));
x=leer.readInt();

es todo espero q te sirva.