Você está na página 1de 17

Programação de Computadores I

Processamento de arquivos

Prof. Reginaldo Santos


1 / 17
Agenda

1.Introdução
2.Parâmetros da linha de comando
3.Geração de arquivos
4.Processamento de um arquivo

2 / 17
Introdução


O processamento de arquivos é uma forma de manipular
e armazenar dados permanentes


Arquivo
– Pode ser utilizado como I/O para programas
– É uma área em disco gerenciada pelo SO
– É acessado por nome
– Deve-se indicar a operação: leitura e/ou escrita


Em Python, abrimos arquivos com a função open()
3 / 17
Introdução


A função open() utiliza parâmetros nome e modo
– nome é o nome do arquivo. Ex.: leiame.txt
– modo indica as operações que vamos realizar

Os modos podem ser


combinados:
“r+”, “w+”, “w+b”, etc.

4 / 17
Introdução


A função open() retorna um objeto do tipo file (arquivo)

Alguns métodos
– write() para escrever dados em um arquivo
– read() para ler dados de um arquivo
– close() para fechar o arquivo

Sempre deve-se seguir o ciclo
– Abertura: liga o programa ao espaço em disco
– Leitura e/ou escrita: operações obre o arquivo
– Fechamento: informa ao SO para liberar os recursos e
preservar a integridade dos dados do arquivo
5 / 17
Introdução


Exemplo: programa que cria um arquivo em modo de
escrita e escreve 20 linhas nele

O modo “w” cria o arquivo caso ele não exista.


Se já existir, o conteúdo do arquivo será apagado.

O close() garante que o SO foi informado de que 6 / 17


não vamos mais trabalhar com o arquivo.
Introdução


Exemplo: programa que lê um arquivo e escreve seu
conteúdo no console

Os arquivos de texto possuem alguns caracteres


de controle especiais. Um dos mais importantes é
o que marca o fim de uma linha.
7 / 17
O método readline() retorna apenas uma linha.
Introdução


Marcador especial de fim de linha
– No Windows: marcado por dois caracteres ASCII:

10: new line (\n)

13: carriage return (\r)
– No Linux: apenas um caractere de fim de linha

10: new line (\n)
– No Mac OS X: apenas um caractere de fim de linha

13: carriage return (\r)

8 / 17
Introdução

9 / 17
Introdução


O fechamento do arquivo é muito importante
– Programa interrompido inesperadamente
– Parar antes de fecharmos um arquivo


Python possui a estrutura with que cria um bloco em que
um objeto é válido
– No fim do bloco with o contexto é destruído
– Não precisa chamar o close()
– O arquivo será fechado automaticamente

10 / 17
Introdução


Exemplo

11 / 17
Parâmetros da linha de
comando

Exemplo: acesso de parâmetros por linha de comando

12 / 17
Geração de arquivos


Exemplo: gerando dois arquivos com 500 linhas cada

13 / 17
Geração de arquivos


Exemplo: programa equivalente ao anterior

14 / 17
Outros métodos


Lendo um determinado número de caracteres
– read(n): n é o número de caracteres
– tell(): informa a posição do leitor no arquivo
– seek(n): move o ponteiro para a posição n
– closed: variável que informa se o arquivo está fechado
– writelines(strings): escreve mais de uma linha

15 / 17
Exercícios

1) Escreva um programa que receba o nome de um arquivo


por linha de comando e que imprima todas as linhas
desse arquivo

2) Modifique o programa anterior para que receba mais dois


parâmetros: a linha de início e a de fim para impressão. O
programa deve imprimir apenas as linhas entre esses dois
valores (incluindo as linhas de início e fim)

16 / 17
Exercícios

3) Faça uma agenda telefônica com os seguintes requisitos:


– Um menu com opções para o usuário
– Criar um novo contato com nome e telefone
– Alterar as informações de um contato
– Apagar um contato
– Listar os contatos
– Gravar os contados em um arquivo
– Ler os contatos de um arquivo
– Sair do programa

17 / 17

Você também pode gostar