Java - Problema con Lectura por teclado en Eclipse

 
Vista:

Problema con Lectura por teclado en Eclipse

Publicado por Juan Manuel Castañeda (50 intervenciones) el 21/06/2009 01:53:59
Intento hacer una lectura por teclado en Eclipse, me debug no da errores pero cuando ejecuto no ejecuta la operación requierida (p.e. readLine(), readInt()) como ignorando la sentencia de invocación al método no siendo un comentario ;
¿Por qué?
¿Cómo se soluciona?
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:Problema con Lectura por teclado en Eclipse

Publicado por James (207 intervenciones) el 21/06/2009 04:16:53
Seguro debe ser algo muy sencillo que se te haya psado por alto, en general cuando un flujo de entrada falla, es porque los datos ingresados no son los esperados, xq no se inicio correctamente el flujo de ingreso de datos, o bien se murio en le proceso, en todo caso xq no subes un poco de codigo a ver que esta pasando, Suerte
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:Problema con Lectura por teclado en Eclipse

Publicado por Juan Manuel Castañeda (50 intervenciones) el 22/06/2009 00:31:43
import Lectura.Cadena;
import Lectura.NoCadena;
import java.io.IOException;
public class c1 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Cadena c=Cadena.crear();
NoCadena n=NoCadena.crear();
int i;
String s;
NoCadena n=NoCadena.crear();
try{
s=c.readLine();
i=n.leerInt();
System.out.println(i);
System.out.println(s);
}
catch(IOException e){
System.out.print(e.getMessage());
}

}

}
package Lectura;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Cadena extends BufferedReader{

static BufferedReader br=null;
static InputStreamReader is=null;
static Cadena c=null;
private Cadena(InputStreamReader is){super(is);}
public static Cadena crear(){
if(Cadena.is==null)is=new InputStreamReader(System.in);
if(Cadena.br==null)br=new BufferedReader(is);
if(Cadena.c==null)Cadena.c=new Cadena(is);

return c;

}
public Object clone(){return this;}
public void close()throws IOException{super.close();}
public String readLine() throws IOException{

return super.readLine();
}

}
package Lectura;
import java.io.DataInputStream;
import java.io.IOException;

public class NoCadena extends DataInputStream{
static NoCadena nocadena=null;

private NoCadena(java.io.InputStream is){
super(is);
}
public static NoCadena crear(){

if(NoCadena.nocadena==null)NoCadena.nocadena=new NoCadena(System.in);
return nocadena;
}
public Object clone(){return this;}
public byte leerByte() throws IOException{

return this.readByte();

}
public boolean leerBoolean()throws IOException{
return this.readBoolean();
}
public double leerDouble()throws IOException {
return this.readDouble();}
public char leerCaracter()throws IOException{return super.readChar();}
public float leerFloat()throws IOException{return super.readFloat();}
public int leerInt()throws IOException{return this.readInt();}
public long leerLong() throws IOException{return super.readLong();}
public short leerShort() throws IOException{return super.readShort();}
}
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:Problema con Lectura por teclado en Eclipse

Publicado por James (207 intervenciones) el 22/06/2009 17:45:41
Primero se esta repitiendo la linea

NoCadena n=NoCadena.crear();

eso ya deberia darte un error, por lo demas es correcto el codigo, xq no pones el error que te arroja, Suerte
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:Problema con Lectura por teclado en Eclipse

Publicado por Juan Manuel Castañeda (50 intervenciones) el 22/06/2009 18:55:59
Mensajes de debug
c1[Java Application]
c1 at localhost :1280
Thread [main] (sopported (entry into method main in c1))
c1.main(String[] ) line:12
javaw.exe
Mensaje de Run
c1[Java Application]
javaw.exe
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:Problema con Lectura por teclado en Eclipse

Publicado por James (207 intervenciones) el 22/06/2009 22:02:07
Si no me equivoco la linea duplicada que te mecione

NoCadena n=NoCadena.crear();

es la linea 12, si ya la eliminaste debe estar en la lectura o ecritura, no es muy calro el error si es el que capturas mejor imprime la traza del error eso es mas util e.printStackTrace();, ya probe el codigo o hice en Netbeans y funciona correctamente no lo he probado en eclipse xq no he tenido tiempo, pero es muy simple deberia funcionar correctamente, Suerte
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:Problema con Lectura por teclado en Eclipse

Publicado por Juan Manuel Castañeda (50 intervenciones) el 23/06/2009 18:28:18
La linea que da error es Cadena c=Cadena.crear(); pero no está duplicada.
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