Java - No muestra nada por consola?

   
Vista:

No muestra nada por consola?

Publicado por Mario (6 intervenciones) el 12/10/2017 22:52:52
Alguien me podría decir porque este código no muestra nada por consola?? es como si no entrara en el for porque si le pongo un system.out.print fuera si muestra cosas. Muchas gracias de antemano.
Para más aclaración archivo.txt es un archivo el cuál en cada línea tiene una ruta hacia otro archivo del pc.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
public static Integer numeroLineas(String archivo) throws FileNotFoundException, IOException{
	int cont=0;
	BufferedReader br = new BufferedReader(new FileReader(archivo));
	while((br.readLine()) != null){
		cont++;
	}
	br.close();
	return cont;
}
 
public static void leeLinea(String archivo) throws FileNotFoundException, IOException{
	String dir;
	int numL=numeroLineas(archivo);
	//File config = new File(archivo);
	// Cargamos el buffer con el contenido del archivo
    BufferedReader br = new BufferedReader (new FileReader(archivo));
    // Leemos las lineas
    //System.out.println (br.readLine());
    for(int i=0; i>numL; i++) {
		dir = br.readLine();
		System.out.println (dir);
    //cogemos el archivo de la dirección que marca la linea 'dir'
		File fichero = new File(dir);
		System.out.println(fichero.getName());
 
    }
    br.close();
}
 
public static void main(String[] args) throws IOException {
    leeLinea("C:\\Users\\Luis\\Desktop\\archivo.txt");
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

No muestra nada por consola?

Publicado por Thanatos (91 intervenciones) el 13/10/2017 06:52:20
La condición del for nunca se cumple porque el valor inicial de su contador i = 0, nunca será mayor que el valor almacenado en numL, incluso si el valor de numL es el mínimo posible (cero):

1
i>numL  // 0 > 0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No muestra nada por consola?

Publicado por Mario (6 intervenciones) el 13/10/2017 10:26:20
muchas gracias, con un menor lo he solucionado, aun así, tenía entendido que funcionaba de la siguiente manera:
Partes con una i=0 y te metes en el forincrementando esa i en 1 cada vez que iteras y, una vez que llegas a superar el valor de numL entonces se sale.
Pero al parecer es mas bien así como partes de i=0 y siempre que sea menos que numL te metes en el for no? algo así como un while?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad