BufferedWRiter/Reader - ajuda

8 respostas
V

olá javaAmigos,

estou no trabalho e não tenho como compilar/rodar este codigo :roll:

alguem pode me dizer se ele compila/roda?

grato :smiley:

import java.io.*;
import java.swing.*;

public class Buffer{

  public static void main(String [] args){

    InputStream mens = System.in;
       
    BufferedWriter bf = new BufferedWriter(new InputStreamWriter(mens));
        
    System.out.println(bf);


  }

}

8 Respostas

S

o que exatamente vc quer que seu código faça ?

V
vectorb:
olá javaAmigos,

estou no trabalho e não tenho como compilar/rodar este codigo :roll:

alguem pode me dizer se ele compila/roda?

grato :D

import java.io.*;
import java.swing.*;

public class Buffer{

  public static void main(String [] args){

    InputStream mens = System.in;
       
    BufferedWriter bf = new BufferedWriter(new InputStreamWriter(mens));
        
    System.out.println(bf);


  }

}

quero que imprima o que foi digitado na porta de entrada

se estiver com o eclipse ou o netbeans aí testa ele

agradeço

abraço

S

Porta de entrada que vc quer dizer é teclado ? Tudo que vc digitar apareça em baixo ?
Se for isso eu fiz algumas alterações, dê uma olhada e post aí se é isso.

import java.io.*;  
  
public class Buffer{  
  
	
  
	public static void main(String [] args){  
  
    InputStream mens = System.in;
    InputStreamReader isr = new InputStreamReader(mens);
    BufferedReader bf = new BufferedReader(isr);
    String entrada;
    try{
    	System.out.print("Digite algo: ");
    	entrada = bf.readLine();
    	System.out.println(entrada);
    }
    catch(IOException e){
    	e.printStackTrace();
    }
  }
}
V

isso mesmo nando :smiley:
valeu!

:arrow:abraço

M

Sugiro que use Scanner pois é mais simples e potente:

Scanner entrada = new Scanner(System.in);
// para verificar se ainda há mais linhas usa-se o método hasNextLine()
// para verificar se há mais palavras usa-se o hasNext()
// o Scanner ainda suporta trabalhar com números e com expressões regulares
// para simplesmente mostrar tudo o que foi digitado:
while (entrada.hasNextLine()) {
    System.out.println(entrada.nextLine());  
}
V

eu já sei trabalhar com scanner, queria mesmo entender as outras estruturas de I/O
mas mesmo assim obrigado
abraço

M

vectorb:
eu já sei trabalhar com scanner, queria mesmo entender as outras estruturas de I/O
mas mesmo assim obrigado
abraço

Pelo que você disse que queria fazer, o Scanner é a melhor solução.

No caso de se trabalhar com texto não há necessidade de usar outras estruturas. Estas só seriam necessárias caso o arquivo fosse binário (ou precisássemos trabalhar com os bytes de um arquivo de texto - como no caso de cálculo de hashs).

Para isso, aí sim use BufferedInputStream, informando o InputStream do qual os dados serão lidos (seja ele System.in, FileInputStream, Socket.getInputStream() e assim por diante).

V

valeu marcão
:slight_smile:

Criado 29 de janeiro de 2010
Ultima resposta 1 de fev. de 2010
Respostas 8
Participantes 3