Apostila_Cap02-03-04 VP1
1846 palavras
8 páginas
Programação Avançada em JavaPatrícia Augustin Jaques
2 Entrada e Saída de Dados em Java
A maioria dos programas precisa acessar e enviar dados externos ao programa. Os dados de entrada podem ser provenientes de um arquivo em disco, de um teclado ou de uma conexão de rede.
Da mesma maneira, o destino de saída pode ser um arquivo em disco ou uma conexão em rede. Java permite lidar com todos os tipos de entrada e saída através de uma abstração conhecida como stream. Stream é tanto uma fonte de dados como também um destino para dados.
O pacote java.io define um grande número de classes para ler e escrever streams. As classes
InputStream e OutputStream, bem como as suas subclasses, são usadas para ler e escrever stream de bytes, enquanto que as classes Reader e Writer são usadas para ler e escrever streams de caracteres. As streams são unidirecionais, ou seja, você pode ler de uma stream de entrada
(InputStream), mas não pode escrever nela. Da mesma maneira você pode escrever de uma stream de saída (OutputStream), mas não pode ler dela.
Algumas streams são chamadas de “nodes” porque elas lêem dados ou escrevem dados de algum lugar em específico como, por exemplo, arquivo de disco ou conexão em rede. Outras streams são chamadas de filtros, pois são uma conexão a uma stream de entrada, bufferizando e repassando os dados provenientes desta outra stream de entrada.
Neste capítulo serão abordados diversos exemplos, bem como as classes usadas na execução destes exemplos.
2.1 A Classe InputStream
A classe InputStream fornece métodos para a leitura de bytes a partir de uma stream.
Métodos
Descrição
int read ( )
Lê um byte e retorna o seu valor em um inteiro.
Retorna –1 se chegou ao fim do arquivo. int read (byte b[ ])
Escreve os bytes lidos na array de bytes b. Será lido, no máximo, b.length bytes. Retorna o número de bytes lidos. int read (byte b[], int off, int Escreve length bytes lidos na array de bytes