Hola:
Tengo una duda que no se resolver.
Pretendo hacer un comando DIR como el de MS-DOS pero me sale un NullPointerException, que se lo que es pero no se porque sale.
El main:
Código:
package ejemplodirmultiple;
public class Main {
public Main() {
}
public static void main(String[] args) {
// TODO code application logic here
Dir d = new Dir("c:\\");
}
}
Y la clase Dir:
Código:
package ejemplodirmultiple;
import java.io.*;
public class Dir {
private File f;
public Dir() {
}
public Dir(String ruta){
this.setF(new File(ruta));
if(this.verificador(this.getF())){
if(this.getF().isDirectory()){
File [] ficheros = this.getF().listFiles();
for(int i=0;i<ficheros.length;i++){
if(ficheros[i].isDirectory()){
listarTodo(ficheros[i]);
}else{
System.out.println(ficheros[i].getName());
}
}
}
}else{
System.out.println("Ruta dada inexistente o inalcanzable.\n"+ruta);
this.setF(null);
}
}
private void listarTodo(File f){
File [] f1 = f.listFiles();
for(int i=0;i<f1.length;i++){
if(f1[i].isDirectory()){
this.listarTodo(f1[i]);
}else{
System.out.println(f1[i].getName());
}
}
}
private boolean verificador(File f){
return f.exists();
}
public File getF() {
return f;
}
public void setF(File f) {
this.f = f;
}
}
Todo va perfecto hasta mas o menos los 8 segundos de ejecucion, imagino que este dato variara segun donde se ejecute, en el que sale el siguiente error:
Exception in thread "main" java.lang.NullPointerException
at ejemplodirmultiple.Dir.listarTodo(Dir.java:42)
at ejemplodirmultiple.Dir.<init>(Dir.java:29)
at ejemplodirmultiple.Main.main(Main.java:27)
Java Result: 1
Sabria alguien decirme porque sale este error?
Muchas gracias.