elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Recuerda que debes registrarte en el foro para poder participar (preguntar y responder)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  duda básica con método available()
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: duda básica con método available()  (Leído 2,913 veces)
novalida

Desconectado Desconectado

Mensajes: 160


Ver Perfil
duda básica con método available()
« en: 7 Junio 2009, 13:51 pm »

Hola!!
supongo que esto sea una pregunta bastante sencilla, pero he intentado buscar info al respecto y no he conseguido solucionar el problema.

el programa en cuestión tiene que leer un caracter, visualizarlo y luego otra vez lo mismo, leer y visualizar.

el problema es que he buscado la manera de saltar los caracteres de retroceso de carro y salto de línea, encontrando la siguiente solución:

Código:
ncars = flujoE.available();
flujoE.skip(ncars);


lo que me ocurre es que me da un error, ay que no reconoce el método available() definido en el tipo BufferedReader (es el error que me da el compilador).

el código completo:

Código:
import java.io.*;

public class CTest {

public static void main (String[]args)
{
InputStreamReader isr = new InputStreamReader (System.in);
BufferedReader flujoE = new BufferedReader (isr);
PrintStream flujoS = System.out;

char car = 0;
int ncars;

try
{
flujoS.print("Caracter: ");
car = (char)flujoE.read();
flujoS.println(car);

ncars = flujoE.available();
flujoE.skip(ncars);

flujoS.print("Caracter: ");
car = (char)flujoE.read();
flujoS.print(car);
}

catch(IOException e)
{

}
}
}

sé que puede ser una tontería, pero como tengo muy poquita experiencia con Java (algo más con C) no doy con la solución
muchas gracias :)


En línea

Chuidiang

Desconectado Desconectado

Mensajes: 161



Ver Perfil WWW
Re: duda básica con método available()
« Respuesta #1 en: 27 Junio 2009, 16:05 pm »

El problema es sencillo, BufferedReader no tiene método available(). Tedndrás que buscar otra solución: usar otra cosa que no sea BufferedReader y tenga método available o bien pensar otra forma de leer y evitar el retorno de carro.

Por ejemplo, puedes usar directamente el InputStreamReader y saltarte el BufferedReader, o mejor aún, usar directamente el System.in

Se bueno.


En línea

maldillo

Desconectado Desconectado

Mensajes: 2


Ver Perfil
Re: duda básica con método available()
« Respuesta #2 en: 1 Julio 2009, 20:02 pm »

// Aqui el código. Espero que solucione tu inquietud "novalida"

package pak;

import java.io.*;

public class CTest {
   
   public static void main (String[]args)
   {
      InputStreamReader isr = new InputStreamReader (System.in);
      BufferedReader flujoE = new BufferedReader (isr);
      PrintStream flujoS = System.out;
      
      String car = "";
      
      try
      {
         
         

         flujoS.print("Caracter: ");
         car = flujoE.readLine();
         flujoS.println(car);
         
         
         flujoS.print("Caracter: ");
         car = flujoE.readLine();
         flujoS.println(car);
         
         
         
         
      }
      
      catch(IOException e)
      {
         
      }
   }
}

//Roberto
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con un método de optimización de HD Intel Graphics
Hardware
eleon 1 2,990 Último mensaje 26 Junio 2012, 00:08 am
por Aprendiz-Oscuro
Duda sobre el método get
Java
reygecko 2 1,967 Último mensaje 16 Enero 2013, 23:49 pm
por reygecko
Duda con metodo en c#
.NET (C#, VB.NET, ASP)
axeelcs 0 1,564 Último mensaje 22 Abril 2014, 16:25 pm
por axeelcs
duda metodo comentar ( URGENTE ! )
Java
Juanma91 0 1,314 Último mensaje 18 Mayo 2014, 16:27 pm
por Juanma91
Duda con metodo .listen() de NodeJS
Desarrollo Web
Ali Baba 4 3,165 Último mensaje 8 Abril 2020, 03:31 am
por Ali Baba
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines