Java - excepcion al intentar leer desde un archivo .txt

   
Vista:

excepcion al intentar leer desde un archivo .txt

Publicado por omar (2 intervenciones) el 26/08/2009 04:02:03
Hola muy buenas noches:

he estado tratando de poner a funcionar un metodo para que mi aplicacion en Java pueda leer datos desde un archivo .txt y asimismo insertarlos dentro de una tabla en una pequeña base de datos en access que tengo local en mi pc. El problema esta en que al correr la aplicacion esta lanza una Excepcion de este tipo "java.io.IOException: Stream closed
at sun.nio.cs.StreamDecoder.ensureOpen(StreamDecoder.java:27)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:128)
at sun.nio.cs.StreamDecoder.read0(StreamDecoder.java:107)
at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:93)".

Les adjuntare el metodo de lectura txt. que estoy usando a ver si me ayudan a conseguir el error en el metodo o la razon por la que el programa pueda estar soltando esta excepcion:

public void LeerArchivo(String archivo, String vec[], boolean asigna) throws IOException
{
System.out.println("**Entro**");
File input = new File(archivo);
FileReader in = new FileReader(input);

int c;
String st=new String();

while((c=in.read())!=-1)
{
st=new String();
while((char)c!=' ')
{
st=st+(char)c; // conversion de datos
c=in.read();
if (c==-1)
{
break;
}

}
vec = st.split(" ");

if (asigna==true)
{
try
{
Statement s = Conexion();
s.execute("insert into Historial (CEDULA,NOMBRECLIENTE,ARTICULO,CANTIDAD,PRECIOUNITARIO) values ('"+vec[0]+"','"+vec[1]+"','"+vec[2]+"',"+Integer.parseInt(vec[3])+",'"+vec[4]+"')");
JOptionPane.showMessageDialog(null,"Consulta realizada con exito!");
}
catch(Exception e){
JOptionPane.showMessageDialog(null,"Se ha producido un error en la consulta Contacte a su administrador de sistema","Error en consulta",JOptionPane.ERROR_MESSAGE);
}
}



in.close();
System.out.println("**Salio**");
}

}

Espero que me puedan ayudar ..muchas gracias de antemano.
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

RE:excepcion al intentar leer desde un archivo .tx

Publicado por Tom (909 intervenciones) el 26/08/2009 10:04:56
Mira la documentación de read() y verás que puede lanzar una IOException al alcanzar el final del fichero.
Deberías usar métodos más apropiados (quizás BufferedReader.readLine()) y además, capturar las excepciones (con catch()).
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

RE:excepcion al intentar leer desde un archivo .tx

Publicado por omar (2 intervenciones) el 27/08/2009 01:46:58
Gracias Tom por la sugerencia. Intentare con Buffered Reader, gracias por el dato.
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

RE:excepcion al intentar leer desde un archivo .tx

Publicado por axel (4 intervenciones) el 17/09/2009 23:45:46
Prueba a lanzarla sobre lady4j.com, a mi me funciono.

Un saludo.
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