Imprimir dados lidos com System.in.read();

2 respostas
E

Galera, como Fazer para imprimir os valores lidos em um
dado do tipo byte? Talvez eu tenha que fazer a conversao....
O fato é que se mando imprimir dessa maneira ele me mostra
uma seria de numeros!!

public class Exemplo1{
    public static void main(String args[])
    {
        byte dado[] = new byte[10];
	System.out.println("Digite um nome");
        try
        {
            System.in.read(dado);[/b]
            for( int i=0; i < dado.length ; i++) {

               //Gostaria de Imprimir o que foi digitado
            	System.out.print(dado[i]);
            }
            
          System.out.println("Digite um número");
            //Gostaria de Imprimir o que foi digitado
            int i = System.in.read();
            System.out.println("\nNumero Digitado: " + i);
        }
        catch (java.io.IOException erro_gerado)
        {
        // Tratamento de Erro
        }
    }
}
Se alguem puder me ajuda....

Falow.

2 Respostas

H

eduardo_costa,

use um cast (char) antes da impressão dos bytes:

System.out.print((char) dado[i]);

a impressão de i é em ascii. se vc digitou 1 ele imprime 49. Se vc quiser o valor convencional use o operador &

System.out.println("\nNumero Digitado: " + (i & 0x0f));

E

“hipersoft”:
eduardo_costa,

use um cast (char) antes da impressão dos bytes:

System.out.print((char) dado[i]);

a impressão de i é em ascii. se vc digitou 1 ele imprime 49. Se vc quiser o valor convencional use o operador &

System.out.println("\nNumero Digitado: " + (i & 0x0f));

Valeu!!! :lol:

Criado 23 de fevereiro de 2004
Ultima resposta 23 de fev. de 2004
Respostas 2
Participantes 2