Buscar

Aula2 - Arquivos-Acesso Sequencial

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Arquivos 
Prof: Ekler Paulino de Mattos 
ekler.mattos@gmail.com 
CPCX/UFMS 
 
 
 
 
• Acesso sequencial 
 
 
Arquivos 
 
• Armazenamento de dados em vetores é temporário: Os dados são 
perdidos quando o programa termina; 
 
• Solução: utiliza-se arquivos para armazenamento a longo prazo – 
dados persistentes (Existem além da duração do programa); 
 
• Arquivos são utilizado diariamente: Criação da uma planilha, ou 
para escrever um artigo; 
 
• Arquivos são armazenados em dispositivos de armazenamento 
secundário: Fitas magnéticas, Disco rígido, pendrive, cds, etc… 
 
 
Arquivos 
 
• Arquivos são acessados basicamente de duas formas: 
 
• Acesso sequencial: Os bytes são acessados de forma sequêncial 
– Vantagens: 
• Simplicidade de armazenamento e recuperação; 
 
• Possibilidade de utilizar técnicas de bufferizacação, quando se move os 
dados de um dispositivo de armazenamento para outro; 
 
– Acesso sequêncial utiliza canais para transferir os fluxos de dados de 
um lugar para outro; 
 
 
Arquivos 
• Arquivos são acessados basicamente de duas formas: 
 
• Acesso sequencial: significa que um grupo de elementos (por 
exemplo, dados num array de memória ou num arquivo em disco ou 
em fita) é acessado numa sequência predeterminada, ordenada. 
– Vantagens: 
• Simplicidade de armazenamento; 
• Possibilidade de utilizar técnicas de bufferizacação, quando se move os 
dados de um dispositivo de armazenamento para outro; 
 
– Acesso sequêncial utiliza canais para transferir os fluxos de dados de 
um lugar para outro; 
 
• Exemplo: Pergaminho. 
 
Arquivos 
 
• Acesso aleatório: a capacidade de acessar um elemento arbitrário 
de uma seqüência em tempo igual. 
 
– Vantagens: 
• Acessa qualquer dado presente em um vetor de forma igual: O contrário 
do acesso sequencial, onde um elemento mais distante leva mais tempo 
para ser acessado. 
 
– Exemplo: Livro; 
 
 
Arquivos 
 
• O processo de bufferização consiste de uma transferência de dados 
através de um buffer (um vetor); 
 
 
 
 
• Quando o buffer é preechido, os dados são transferidos para o 
outro dispositivo; 
 
 
 
Arquivos 
 
 
 
 
Figura 1 – O Buffer. 
Operações Elementares de Arquivos 
 
 
• As operações realizadas em um arquivo são: 
– New: Criação de uma arquivo vazio; 
– Open: Abre um arquivo existente; 
– Old: Altera um arquivo existente; 
– Read: Le um Arquivo existente; 
– Close: Registra o arquivo; 
 
 
 
Operações Elementares de Arquivos 
• Exemplo: 
 
• New: Criação de uma arquivo vazio; 
• VAR f: File 
• f := New(name) 
 
Arquivos em Java 
 
 
• Computador processa o bit (0 ou 1), mas para o programador 
trabalhar é utilizado o caracteres: Digitos (0-9), Letras (a-z, A-Z), 
Símbolos especiais (@,#,$,%,^,(,)); 
 
 
• Em Java os caracteres são caracteres Unicode: composto por dois 
bytes onde cada byte e composto por dois bits. 
 
Arquivos em Java 
Registros são tipo abstratos de dados heterogêneos que servem para 
armazenar dados. Registros são compostos por campos. 
 
• Ex: 
• O registro Folha de Pagamento: é composto pelos campos: 
– Id do Funcionário (int) 
– Nome (String) 
– Endereço (String) 
– Salario-hora (double) 
– Nro de isencoes reinvindicadas (int) 
– Rendimento do ano até a presente data (int ou double) 
– Total Impostos retidos (int ou double) 
 
 
 
Arquivos em Java 
• Registros são armazenados em arquivos: 
• Arquivo é uma coleção de bytes; Para facilitar a busca em um 
arquivo cada registro possui um Id (identificador). 
 
 
 
Arquivos em Java 
• Java vê cada arquivo como um fluxo sequencial de bytes; 
 
• Fluxos de entrada/saída de bytes para arquivos: fluxos de bytes; 
• Fluxos de entrada/saída de caracteres para arquivos: fluxos de 
caracteres; 
 
 
 0 1 2 … n-1 
Marcador de fim de arquivo. 
Arquivos em Java 
• Java utiliza o pacote: java.io para a manipulação de arquivos. 
 
• Os dados são manipulados através de objetos. A persistência 
(armazenamento) dos objetos é feito mediante processo de 
serialização: 
 
• De forma genérica a serialização é uma técnica usada para persistir 
objetos , ou seja : gravar objetos em disco , fazer a transmissão 
remota de objetos via rede , armazenar os objetos em um banco de 
dados e/ou arquivos (binários , xml, etc.) 
 
 
 
O Que é uma API 
 
 
 
 
API, de Application Programming Interface (ou Interface de 
Programação de Aplicativos) é um conjunto de rotinas e padrões 
estabelecidos por um software para a utilização das suas 
funcionalidades por aplicativos que não pretendem envolver-se em 
detalhes da implementação do software, mas apenas usar seus 
serviços. 
 
http://download.oracle.com/javase/1.4.2/docs/api/java/io/File.html 
Arquivos em Java/Classe File 
 
 
 
Classe File: 
• Usada para recuperar informações de arquivos e diretórios em 
disco; 
 
• Não abre arquivos e não oferecem capacidade de processamento 
de arquivos. 
 
• Utilizados em conjunto com outras bibliotecas do java io, para 
especificar arquivos ou diretórios a manipular. 
 
• Javadoc: 
 
 
http://download.oracle.com/javase/1.4.2/docs/api/java/io/File.html 
Arquivos em Java/Classe File 
 
 
 
Classe File: 
• Usada para recuperar informações de arquivos e diretórios em 
disco; 
 
 
• Não abre arquivos e não oferecem capacidade de processamento 
de arquivos. 
 
• Utilizados em conjunto com outras bibliotecas do java io, para 
especificar arquivos ou diretórios a manipular. 
 
• Javadoc: 
 
 
http://download.oracle.com/javase/1.4.2/docs/api/java/io/File.html 
Arquivos em Java/Classe File 
 
 
 
Exemplo 1 de manipulação da classe File: 
 
 
 
 
 
Arquivos em Java/Classe File 
 
 
 
Exemplo 2 de manipulação da classe File: 
 
 
 
 
 
Arquivos em Java/ Exemplo da Classe: 
FileWriter e FileReader 
 
 
 
 
 
 
• FileWriter: Classe destinada para escrita de arquivos de caracteres. 
 
 
 
 
 
• FileReader: Classe destinada para leitura de arquivos de 
caracteres. 
 
 
 
 
 
 
Arquivos em Java/ Exemplo da Classe: 
FileWriter e FileReader 
 
 
 
Exemplo 2 de manipulação da classe File: 
 
 
 
 
 
Arquivos em Java/Classe File 
 
 
 
 
 
 
 
 
Arquivos em Java/Classe File 
 
 
 
Exercício 1 – Utilize a Classe File para: 
- Criar um diretório com o nome “Aula”. Verifique se este diretório 
existe. Caso exista, o sistema deverá apresentar a seguinte 
mensagem: “Não foi possível criar o diretório. Este diretório já 
existe!”. 
 
 
- Dentro do diretório “Aula”, criar um arquivo chamado “notas”. O 
sistema deverá validar a existência do arquivo, se ele existir a 
seguinte mensagem deverá ser apresentada: “Não foi possível criar 
o arquivo. Este arquivo já existe!”. 
 
Arquivos em Java/Classe File 
 
 
 
Exercício 2 – Utilize a Classe File para carar um programa em Java 
que: 
 
1. Criar um Diretório chamado “Aula”; 
2. Verifique se o diretório existe, crie um arquivo chamado “Notas” 
dentro do diretório; 
3. Verifique se existe o diretório “Aula2”, caso não exista, 
4. Copie o arquivo “Notas” para um o diretório “Aula2”; 
5. Execute o programa uma segunda vez; 
 
Acesso Sequencial: Formatter 
 
 
 
• Abertura e Escritaem Arquivos: 
Acesso Sequencial: Scanner 
 
 
 
• Leitura de Arquivos:

Outros materiais