Hola
Mi problema es el siguiente:
Estoy programando un pequeño juego de rompecabezas, tengo un archivo de texto llamado archivo.txt en el cual estoy guardando los registros de tiempo que tarda en armarlo y el nombre del jugador, hasta aquí todo bien, puedo leer el contenido del archivo pero necesito que si en el archivo ya existe un registro con el nombre del jugador del que se pretende guardar un nuevo registro y que si el tiempo que ya tiene registrado es mayor al actual, me reemplace ese registro por el actual en el archivo de texto, a manera de un Top10.
Ejemplo:
tengo registros de tiempo y nombre asi:
[0:5:45][........][jose]
[0:6:45][........][angel]
[0:7:45][........][laura]
al iniciar un nuevo juego obtengo lo siguiente
[0:6:19][........][angel]
y me gustaria que en el archivo de texto al guardar nuevamente me quede asi:
[0:5:45][........][jose]
[0:6:19][........][angel]
[0:7:45][........][laura]
Tengo el siguiente código:
BufferedReader io = new BufferedReader(new FileReader(archivo));
String line = "";
String [] lineas= null;
while ((line = io.readLine()) != null) {
token = new StringTokenizer(line, "[]");
while (token.hasMoreTokens()) {
renglon[0] = token.nextToken();
renglon[1] = token.nextToken();
renglon[2] = token.nextToken();
StringTokenizer token2 = new StringTokenizer(renglon[0], ":");
while (token2.hasMoreTokens()) {
String hrs = token2.nextToken();
String min = token2.nextToken();
String seg = token2.nextToken();
Ihrs = Integer.parseInt(hrs);
Imin = Integer.parseInt(min);
Iseg = Integer.parseInt(seg);
}
}
}
guardar = new BufferedWriter(new FileWriter("directorio/archivo.txt", true));
guardar.write("[" + jlblTiempo.getText() + "]" + "[ ........ ]" + "[" + nombre + "]");
guardar.newLine();
******
Alguna idea de como resolverlo??
De antemano gracias por su ayuda