Buenas tardes, estoy haciendo un ejercicio en el que dado un fichero binario “FNum.bi" que contenga 25 enteros (que los paso con un bucle for), hacer un algoritmo que escriba en un fichero “FNumOrd.dat” los valores ordenados del fichero de partida.
Bien, el codigo que tengo para resolver esto es el siguiente.
Código Java:
Ver originalpublic class Ficheros6_1 {
/**
* @param args the command line arguments
*/
public static void main
(String[] args
) { try{
File f
= new File("src//datos//FNum.bi");
for(int i = 0; i < 25; i++){
int num = rand.nextInt(25)+65;
dos.write(num);
}
dos.close();
int dat = 0;
while(dis.read() != -1){
dat = dis.read();
list_num.add(dat);
}
dis.close();
File f2
= new File("src//datos//FNumOrd.dat");
while(!list_num.isEmpty()){
dat = list_num.get(0);
dos2.write(dat);
list_num.remove(0);
}
dos2.close();
{
System.
out.
println("Ruta erronea"); }
{
System.
out.
println("Error: "+ex.
getMessage()); }
}
Bien, a la hora de escribir los 25 numeros enteros en el fichero .bin, se hace correctamente, pero cuando intento leer posteriormente del mismo fichero .bin, solo lee 13 datos, y no 25.
A que puede ser debido esto??
Si no ha quedado claro el motivo de mi duda, diganlo y lo aclarare mas.
Gracias y un saludo