A linguagem Java oferece uma gama de funções padrão para entrada e saída . Você pode facilmente fazer uso dessas funções dentro de seus programas , o que lhe permite processar a entrada de recursos externos , como arquivos . Usando as classes fluxo de entrada em Java, os programas podem ler dados de um local especificado. A própria classe InputStream é abstrata , por isso não pode ser instanciado , mas você pode usar qualquer uma de suas subclasses, como a classe FileInputStream . Pode ler dados em várias formas , tais como um byte único de cada vez , para cada carácter encontrada dentro do recurso externo . Instruções 
 1 
 criar um fluxo de entrada de objeto em seu programa. Digite o seguinte código Java , criando uma nova instância da classe FileInputStream e passá-la a localização do arquivo que você está pensando em ler como um parâmetro: 
 
 FileInputStream myInputStream = new FileInputStream ( " inputtext.txt "); 
 
 Altere o parâmetro " inputtext.txt " de acordo com o recurso que você está usando, com ou um URL relativo ou absoluto. Neste caso , a referência relativa é um arquivo de texto no mesmo diretório que o código do aplicativo. 
 2 
 Adicione um bloco try para o seu código . Se você estiver programando em um ambiente de desenvolvimento integrado , ou IDE, você perceber que um erro foi destaque porque seu código não está contido dentro de um bloco try . Isto é, caso o recurso que você está tentando ler não pode ser encontrado ou acessado. Alterar o seu código da seguinte forma , a adição de um bloco try e um bloco catch para dizer ao programa o que fazer se houver um problema ao acessar o arquivo , caso em que uma exceção é lançada . 
 
 Try { 
 
 //cria um fluxo de entrada 
 
 FileInputStream myInputStream = new FileInputStream ( " inputtext.txt "); 
 
 //processamento adicional aqui 
 
 } 
 
 catch (Exception e) { System.out.println ( e.getMessage ()); } 
 
 Isso interrompe seu programa de deixar de funcionar se o arquivo não for encontrado 
 3. Leia 
 de seu fluxo de entrada. Adicione a seguinte linha de código dentro do bloco try, após a linha de criação do objeto de fluxo de entrada: 
 
 //lê um personagem 
 
 int dadosEntrada = myInputStream.read (); 
 
 Este código lê um único caractere de seu recurso de entrada como um inteiro. Seu código pode realizar qualquer processamento necessário para o personagem. No momento , tudo o que tenho feito é ler o primeiro caractere no arquivo , então você precisa para montar o programa para continuar. 
 4 
 loop pelo resto do seu recurso de entrada. Adicione o seguinte código , ainda dentro do bloco try , após a linha de ler o primeiro caractere do seu arquivo : 
 
 while (! DadosEntrada = -1 ) { 
 
 //saída dos dados lidos como um personagem 
 
 System.out.print ( (char ) dadosEntrada ); 
 
 //lê o próximo caractere 
 
 dadosEntrada = myInputStream.read (); 
 
 } 
 
 Este loop while continua até que o objeto de fluxo de entrada encontra o personagem que indica o fim do arquivo foi atingido. Este exemplo simplesmente grava os dados lidos para o console de saída padrão , mas você pode realizar outras tarefas aqui como seu projeto exige. 
 5 
 Salve o programa e compilar e executá-lo para testá-lo. Você deverá ver o conteúdo do arquivo escrito para o console ou uma mensagem de erro se o arquivo não foi encontrado ou lido. Experimente alterar o código dentro do loop while para executar diferentes tipos de processamento nos dados em que você está lendo.