Я пытаюсь записать пять случайных чисел из списка в файл.Я думаю, что мне удается что-то написать, но когда я пытаюсь прочитать файл, все они 0
, кроме последнего.Я искал, но большинство из того, что я нашел, просто объясняет, как написать одну int / строку.Я думаю, что проблема заключается в том, как я пишу.writeInt
записывает как четыре байта, и, возможно, я не использую seek()
в соответствии.
Это мой код.
try {
RandomAccessFile ficheroJugador1 = new RandomAccessFile("jugador1.dat", "rw");
for (int i = 0; i < 5; i++) {
try {
ficheroJugador1.seek(i);
int numEscribir = jugador1.numerosAleatorios.get(i);
ficheroJugador1.writeInt(numEscribir);
} catch (IOException e) {
e.printStackTrace();
}
}
for (int i = 0; i < 5; i++) {
try {
ficheroJugador1.seek(i);
try {
System.out.println(ficheroJugador1.readInt());
} catch (IOException e) {
e.printStackTrace();
}
} catch (IOException e) {
e.printStackTrace();
}
}
try {
ficheroJugador1.close();
} catch (IOException e) {
e.printStackTrace();
}
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Это приводит к:
Числа [10, 9, 3, 8, 7] // Числа, которые я хочу написать и прочитать
0
0
0
0
7