Fichero de texto en java

Iniciado por maikmilk, 12 Junio 2012, 15:59 PM

0 Miembros y 1 Visitante están viendo este tema.

maikmilk

Tengo el siguiente problema, estoy con un programa que según unas opciones de un menu switch guarda una cosa u otra en un fichero de texto con el nombre Pedido.txt, el problema es el siguiente, e intentado que cada vez que se ejecute esta parte del código una que no sobreescriba y que no escriba de mas en el archivo pedido.txt si no que cree otro con el nombre pedido_2.txt y así sucesivamente.

Gracias

[Case]

En google salen rapido las soluciones.
Solamete debes de preguntar si existe un fichero con tal nombre, si lo hay entonces vuelves a preguntar si existe con otro nombre generado, y así hasta encontrar un nombre desocupado.

maikmilk

Chico tus dos respuestas han sido iguales a eso ya e llegado yo...
utilizando el .exits() si devuelve true es que existe si no no, pero como genero un String con el nombre pedido_2.txt y si existe otra vez con un 3... ese es el problema

Nortis

Con un bucle while y un contador. Mientras exista fichero perdido_(contador) contador ++. Si has inicializado la variable contador a 1 entonces siempre vas a tener la extensión por la que terminar el nombre.

maikmilk

ya probe con eso y nada porque contador es un entero y y la clase File se maneja con tipo String entonces cuando ejecuto el código salta una excepción...

Nortis

CitarString a="perdido_";
int b=12;
a+=b;
o
CitarString a="prohibido_";
int b=12;
a += String.valueOf(b);

En los dos casos la variable a contiene "perdido_12".

Saludos

maikmilk

si si he hecho eso pero no funciona.
comparo con exists() si el fichero ya existe y si es true con un bucle incremento una variable de uno en uno hasta que devuelva false y despues al String F = "pedido_"+incremento, pero esto da error.

Es lo mismo que tu dices?

Nortis

Eso debería de funcionar, prueba con 'String F = "pedido_" + String.valueOf(incremento)'. Si me pasas la clase le hecho un vistazo y te digo o si quieres también puedes copiar gran parte de tu código en este hilo. Pero lo mejor que puedes hacer es depurar que es con lo que mas vas a aprender.