Foros del Web » Programación para mayores de 30 ;) » Java »

Error leer fichero .txt (No lo encuentra)

Estas en el tema de Error leer fichero .txt (No lo encuentra) en el foro de Java en Foros del Web. Buenas He hecho un programa en java, en el cual tengo que leer unos datos almacenados en un fichero .txt El fichero lo tengo ubicado ...
  #1 (permalink)  
Antiguo 13/03/2011, 13:44
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Error leer fichero .txt (No lo encuentra)

Buenas

He hecho un programa en java, en el cual tengo que leer unos datos almacenados en un fichero .txt

El fichero lo tengo ubicado en la misma carpeta donde tengo los .class y el .java

El programa que uso para compilar y ejecutar el programa en java es e. BlueJ.

El codigo que me da error es el siguiente: (Esta es la parte solo de leer el fichero)

Código PHP:
    private void leeAlumnos() throws Exception {
        
Scanner f=new Scanner(new File("datos.txt"));
        
int num=0;
        while (
f.hasNext() && num<MAX) {
            
int matricula=f.nextInt();
            
String nombre=f.nextLine();
            
Alumno j=new Alumno(nombre,matricula);
            
alumnos[num++]=j;
        }
        
f.close();
   } 
Y el codigo de error que me lanza es el siguiente:

Código PHP:
java.io.FileNotFoundExceptiondatos.txt (El sistema no puede encontrar el archivo especificado)
    
at java.io.FileInputStream.open(Native Method)
    
at java.io.FileInputStream.<init>(FileInputStream.java:106)
    
at java.util.Scanner.<init>(Scanner.java:636)
    
at Grupo.leeAlumnos(ejer4.java:47)
    
at Grupo.<init>(ejer4.java:43)
    
at ejer4.main(ejer4.java:99
Estoy desesperado!! :(


Gracias!!

Última edición por okawa; 13/03/2011 a las 14:08
  #2 (permalink)  
Antiguo 13/03/2011, 14:14
 
Fecha de Ingreso: marzo-2011
Ubicación: Palmira
Mensajes: 35
Antigüedad: 13 años, 1 mes
Puntos: 1
Respuesta: Error leer fichero .txt (No lo encuentra)

Hola,

tendrías que revisar bien tu programa o mostrarlo todo ya que el error dice :

Cita:
java.io.FileNotFoundException: C:UsersAlvarDocumentsPRGdatos.txt (El sistema no puede encontrar el archivo especificado)
Quiere decir que no encuentra el archivo UsersAlvarDocumentsPRGdatos.txt y tu programa busca el archivo

Cita:
new File("datos.txt")
Entonces no encuentra otro archivo al que tal vez llamas en otra parte del programa.

Revisalo y cuenta como te va.

Saludos
  #3 (permalink)  
Antiguo 13/03/2011, 14:21
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Error leer fichero .txt (No lo encuentra)

Cita:
Iniciado por nachocb_66 Ver Mensaje
Hola,

tendrías que revisar bien tu programa o mostrarlo todo ya que el error dice :



Quiere decir que no encuentra el archivo UsersAlvarDocumentsPRGdatos.txt y tu programa busca el archivo



Entonces no encuentra otro archivo al que tal vez llamas en otra parte del programa.

Revisalo y cuenta como te va.

Saludos

Probe a ponerle la ruta completa pero ni con esas. Actualmente lo tengo asi:

Código PHP:
    private void leeAlumnos() throws Exception {
        
Scanner fich=new Scanner(new File("datos.txt"));
        
int num=0;
        while (
fich.hasNextLine() && num<MAX) {
            
int matricula=fich.nextInt();
            
String nombre=fich.nextLine();
            
Alumno alum=new Alumno(nombre,matricula);
            
alumnos[num++]=alum;
        }
        
fich.close();
   } 
Y el error es el siguiente:

Código PHP:
java.io.FileNotFoundExceptiondatos.txt (El sistema no puede encontrar el archivo especificado)
    
at java.io.FileInputStream.open(Native Method)
    
at java.io.FileInputStream.<init>(FileInputStream.java:106)
    
at java.util.Scanner.<init>(Scanner.java:636)
    
at Grupo.leeAlumnos(ejer4.java:47)
    
at Grupo.<init>(ejer4.java:43)
    
at ejer4.main(ejer4.java:99

¿El error puede ser a que el programa antes de ejecutar el fichero me pida que le introduzca por teclado un int, y al pulsar ENTER tenga el salto de linea guardado?

Código PHP:
  public class ejer4 
    public static 
void main(String args[]) throws Exception {
        
Scanner t=new Scanner(System.in);
        
System.out.println("Introduce codigo del grupo");
        
int c=t.nextInt();
        
Grupo g1=new Grupo(c);
        
g1.asignaNota(1232);
        
g1.ordena();
        
System.out.println(g1.toString());
    }
}
//Fi de la classe ejer4 
  #4 (permalink)  
Antiguo 13/03/2011, 14:39
Avatar de Xerelo  
Fecha de Ingreso: mayo-2009
Mensajes: 2.175
Antigüedad: 14 años, 11 meses
Puntos: 306
Respuesta: Error leer fichero .txt (No lo encuentra)

Cita:
¿El error puede ser a que el programa antes de ejecutar el fichero me pida que le introduzca por teclado un int, y al pulsar ENTER tenga el salto de linea guardado?
Hombre, te está diciendo claramente que no lo encuentra, así que el problema es que lo busca donde no está.

Comprueba en qué directorio está leyendo, si no sabes cómo, haz lo contrario, crea un archivo y busca en qué directorio te lo guarda.
__________________
Cada vez que solucionas los problemas de alguien que no se esfuerza, piensa en que el día de mañana puede llegar a ser tu compañero de trabajo, o peor, tu jefe.
  #5 (permalink)  
Antiguo 13/03/2011, 14:46
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Error leer fichero .txt (No lo encuentra)

Cita:
Iniciado por Xerelo Ver Mensaje
Hombre, te está diciendo claramente que no lo encuentra, así que el problema es que lo busca donde no está.

Comprueba en qué directorio está leyendo, si no sabes cómo, haz lo contrario, crea un archivo y busca en qué directorio te lo guarda.
Con el siguiente codigo el cual imprime la ruta absoluta:

Código PHP:
        File fichero = new File("datos.txt");
        
System.out.println(fichero.getAbsolutePath()); 
Obtengo lo siguiente:

Código PHP:
C:UsersAlvarDocumentsPRGdatos.txt 
Que es donde tengo ubicado el fichero .txt y los .java y .class .Ademas es la carpeta donde esta creado el proyecto con el BlueJ
  #6 (permalink)  
Antiguo 13/03/2011, 16:46
 
Fecha de Ingreso: mayo-2009
Mensajes: 69
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Error leer fichero .txt (No lo encuentra)

Ya esta arreglado. Era un error tonto y que no esperas que sea eso xD

Se ve que al guardar el fichero, nose que haria que le puse la extension dos veces por asi decirlo.

El fichero se llamaba datos.txt, pero realmente era datos.txt.txt, porque el segundo .txt que es su extension esta oculto (debido a la config de windows7)

Asi que por eso no lo encontraba

Asi que ya se puede cerrar el hilo :)

Gracias!

Etiquetas: encuentra, fichero, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:27.