Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/10/2013, 22:45
andre___5025
 
Fecha de Ingreso: septiembre-2013
Ubicación: Bogota
Mensajes: 139
Antigüedad: 11 años, 3 meses
Puntos: 0
Error al ordenar archivo.txt con el metodo burbuja

HOla amigos estoy tratando de ordenar un archivo plano que tiene n posiciones con el método de ordenamiento burbuja. Lo que hago es extraer los datos del archivo, capturarlos todos en un arreglo que lo llame x[j] y pues teniedo este arreglo se supone que debo ordenarlo con el metodo y generar un archivo de salida con los datos ordenados. Pero me sale el siguiente error. Si alguien me puede colaborar enlo que estoy haciendo mal le agradeceria mucho.


Código:
import java.io.*; 
import java.util.ArrayList; 
class PruebaPrecio{
    public static void main(String [] arg) { 
        int aux;
        File archivo = null; 
        FileReader fr = null; 
ArrayList<String> lineas = new ArrayList<String>(); 
        
try { 
	archivo = new File ("C:/Users/Nando Cruz/Desktop/Sin ordenar1/prueba_ent.txt"); 
        FileWriter fw = new FileWriter("C:/Users/Nando Cruz/Desktop/Ordenados/prueba_sal.txt");
        BufferedWriter bw = new BufferedWriter(fw);
	String linea; 
	fr = new FileReader (archivo); 
	BufferedReader br = new BufferedReader(fr); 
		while((linea=br.readLine())!=null)
		{ 
			lineas.add(linea);
		} 

for (int j = 0 ; j < lineas.size() ; j++)
{ 
	linea = lineas.get(j);
	int[] x = new int[lineas.size()];
	x[j] = Integer.parseInt(linea);
	//System.out.print (x[j]+"\n"); 
        
	for (int i=0; i<x.length;i++)
	{
		for (int k=0; k<x.length-1;k++)
		{
			if (x[j]>x[j+1])
			{
				aux=x[j];
				x[j]=x[j+1];
				x[j+1]=aux;
			}
		}
	}
        
	bw.write(String.valueOf(x[j]));
	bw.newLine();
        
        
}//cierra for principal	
	}
	//FIN DEL TRY 
catch(IOException e){ 
System.out.println(e); 
} 
System.exit(0);} 
}

Este es el error que me sale:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8 at PruebaPrecio.main(PruebaPrecio.java:36)