O documento discute entrada e saída de dados em Java utilizando streams. Ele descreve os tipos de streams, como ler e gravar dados, e classes específicas para caracteres, bytes e serialização de objetos. Ele também fornece exemplos de código para ler do teclado, arquivos e exercícios extras.
2. Entrada e Saída
É feita utilizando Streams
Tipos Fontes e destinos
Objetos Arquivo
Caracteres Disco
Imagens Rede (Socket)
Sons Memória
Outro programa
3. Entrada e Saída
Algoritmo básico para Entrada:
Abrir o Stream
Ler a informação
Enquanto “não chegar ao fim”
Processar a informação
Ler outra informação
Fechar o Stream
4. Entrada e Saída
Streams para Caracteres
Lê e grava caracteres (16 bits)
Stream para Bytes
Lê e grava bytes (8 bits)
Métodos básicos
read() e write()
Streams podem ser encadeadas para combinar
suas características
10. Serialização de Objetos
É a representação dos objetos em estado
sequencial de uma forma que possa ser
reconstruído
Classes
ObjectInputStream
ObjectOutputStream
11. Serialização de Objetos
Serializable Interface que deve ser
implementada para tornar-se serializável
Transient Marca os atributos não
serializáveis
Utilização:
RMI – Chamada a métodos remotos
Persistência
12. Arquivos de acesso aleatório
Classe
RandomAccessFile
É usada para Leitura e Gravação
Métodos
skipBytes
Seep
getFilePointer
13. Exercício
Lendo do Teclado
InputStream is = System.in;
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
String linha = br.readLine();
// primeira linha
while (linha != null) {
System.out.println(linha);
linha = br.readLine();
}
14. Exercício
Lendo de um arquivo
InputStream is = new FileInputStream("arquivo.txt");
BufferedReader br = new BufferedReader(new
InputStreamReader( new FileInputStream("arquivo.txt")));
String linha = br.readLine(); // primeira linha
15. Exercício
Lendo de uma arquivo com Scanner
InputStream is = new FileInputStream("arquivo.txt");
Scanner entrada = new Scanner(is);
while (entrada.hasNextLine()) {
System.out.println(entrada.nextLine());
}
is.close();
16. Exercícios Extras(1/2)
1)Faça uma programa em java que leia um texto
informado pelo usuário no console e que salve
o texto informado em um arquivo qualquer.
2)Faça uma programa em java que leia um texto
de um arquivo e escreva em outro.
3)Faça um programa que faça uma cópia de um
arquivo binários. Pesquise como fazer isso.
17. Execícios Extras(2/2)
4)Pesquise sobre a classe java.io.File e faça um
programa crie um diretório qualquer e salve um
arquivo qualquer no diretório criado usando a
classe File.
5)Pesquise como a classe RandomAcessFile
funciona. Faça uma programa em java que leia
os dados de 5 pessoas e armazene em um
arquivo. A classe Pessoa deve ter cpf, nome,
idade.