logo

Tutorial de E/S Java

E/S Java (Entrada e Saída) é usado para processar a entrada e produzir a saída .

Java usa o conceito de fluxo para tornar a operação de E/S rápida. O pacote java.io contém todas as classes necessárias para operações de entrada e saída.

Podemos realizar manipulação de arquivos em Java pela API de E/S Java.

o que é prólogo

Fluxo

Um fluxo é uma sequência de dados. Em Java, um fluxo é composto de bytes. É chamado de riacho porque é como um riacho que continua fluindo.

Em Java, 3 fluxos são criados automaticamente para nós. Todos esses fluxos estão anexados ao console.

1) Saída do sistema: fluxo de saída padrão

2) Sistema.in: fluxo de entrada padrão

3) Sistema.err: fluxo de erro padrão

listagem java

Vamos ver o código para imprimir saída e um erro mensagem para o console.

 System.out.println('simple message'); System.err.println('error message'); 

Vamos ver o código para obter entrada do console.

 int i=System.in.read();//returns ASCII code of 1st character System.out.println((char)i);//will print the character 
Você sabe?
  • Como gravar dados comuns em vários arquivos usando apenas um único fluxo?
  • Como podemos acessar vários arquivos em um único fluxo?
  • Como podemos melhorar o desempenho da operação de entrada e saída?
  • De quantas maneiras podemos ler dados do teclado?
  • O que significa a classe do console?
  • Como compactar e descompactar os dados de um arquivo?

OutputStream versus InputStream

A explicação das classes OutputStream e InputStream é fornecida abaixo:

Fluxo de saída

O aplicativo Java usa um fluxo de saída para gravar dados em um destino; pode ser um arquivo, um array, um dispositivo periférico ou um soquete.

Fluxo de entrada

O aplicativo Java usa um fluxo de entrada para ler dados de uma origem; pode ser um arquivo, um array, um dispositivo periférico ou um soquete.

Vamos entender o funcionamento de Java OutputStream e InputStream pela figura abaixo.

Java IO

Classe OutputStream

A classe OutputStream é uma classe abstrata. É a superclasse de todas as classes que representam um fluxo de saída de bytes. Um fluxo de saída aceita bytes de saída e os envia para algum coletor.

base de dados

Métodos úteis de OutputStream

MétodoDescrição
1) public void write(int)lança IOExceptioné usado para gravar um byte no fluxo de saída atual.
2) public void write(byte[])lança IOExceptioné usado para gravar uma matriz de bytes no fluxo de saída atual.
3) public void flush() lança IOExceptionlibera o fluxo de saída atual.
4) public void close() lança IOExceptioné usado para fechar o fluxo de saída atual.

Hierarquia OutputStream

Hierarquia de fluxo de saída Java

Classe InputStream

A classe InputStream é uma classe abstrata. É a superclasse de todas as classes que representam um fluxo de entrada de bytes.

Métodos úteis de InputStream

MétodoDescrição
1) public abstract int read() lança IOExceptionlê o próximo byte de dados do fluxo de entrada. Ele retorna -1 no final do arquivo.
2) public int disponível() lança IOExceptionretorna uma estimativa do número de bytes que podem ser lidos no fluxo de entrada atual.
3) public void close() lança IOExceptioné usado para fechar o fluxo de entrada atual.

Hierarquia de InputStream

Hierarquia de fluxo de entrada Java