Buscar

Aula 10 - ARQUIVOS

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 20 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 20 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 20 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

PROGRAMAÇÃO II 
AULA 10 – ARQUIVOS 
 
 
 
 
 
 
CIÊNCIA DA COMPUTAÇÃO 
 
ABRINDO E FECHANDO UM ARQUIVO 
Para manipular arquivos em C é 
utilizado o conceito de ponteiro 
de arquivo; 
 
Podemos declarar um ponteiro de 
arquivo da seguinte maneira: 
 
p será então um ponteiro para um 
arquivo. 2 
ABRINDO E FECHANDO UM ARQUIVO 
- FOPEN - 
Esta é a função de abertura de arquivos. Seu 
protótipo é: 
 
 
O nome_do_arquivo determina qual arquivo 
deverá ser aberto. O nome deverá ser válido 
no sistema operacional utilizado; 
 
O modo de abertura diz à função fopen() que 
tipo de uso você vai fazer do arquivo. 
 
 
3 
4 
ABRINDO E FECHANDO UM ARQUIVO 
- FOPEN - 
Poderíamos abrir um arquivo binário para 
escrita, como segue: 
 
 
 
 
A condição (!fp) verifica se o arquivo foi aberto 
com sucesso  ERRO == NULL! 
 
Uma vez aberto o arquivo, vamos poder ler ou 
escrever nele utilizando as funções que serão 
apresentadas nas próximas páginas; 
 
5 
ABRINDO E FECHANDO UM ARQUIVO 
- FOPEN - 
Toda vez que estamos trabalhando 
com arquivos, há uma espécie de 
posição atual do arquivo. Esta é a 
posição de onde será lido ou escrito o 
próximo caractere. Normalmente, 
num acesso sequencial, não temos que 
mexer nesta posição pois quando 
lemos um caractere a posição no 
arquivo é automaticamente 
atualizada. 
6 
FCLOSE 
Quando acabamos de usar um arquivo que 
abrimos, devemos fechá-lo. Neste caso, 
utilizamos a função fclose(); 
 
O ponteiro fp passado à função fclose() 
determina o arquivo a ser fechado; 
 
A função exit() fecha todos os 
arquivos que programa tiver aberto; 7 
LENDO E ESCREVENDO CARACTERES EM 
ARQUIVOS 
PUTC E GETC 
putc() Escreve caractere no arquivo 
 
 
 
getc()  Retorna um caractere lido do 
arquivo 
 
 
Ambos movimentam o índice do 
arquivo em uma posição após a 
execução 
8 
LENDO E ESCREVENDO EM ARQUIVOS 
- FEOF 
EOF (“End of file”) indica o fim de um 
arquivo. A função feof verifica se um arquivo 
chegou ao fim; 
 Retorna não-zero se o arquivo chegou ao 
EOF, caso contrário retorna zero. 
 
 
Outra forma de se verificar se o final do 
arquivo foi atingido é comparar o caractere 
lido por getc com EOF. 9 
PROJETO 1 
10 
PROJETO 1 
11 
LENDO E ESCREVENDO EM ARQUIVOS 
- FGETS 
 Para se ler uma string em um arquivo podemos 
usar fgets(); 
 
A função lê a string até que um caractere de 
nova linha seja lido ou (tamanho-1) caracteres. 
 
Se caractere de nova linha (‘\n’) for lido, ele 
fará parte da string; 
A string resultante sempre terminará com ‘\0’ 
(por isto somente tamanho-1 caracteres, no 
máximo, serão lidos). 
12 
LENDO E ESCREVENDO EM ARQUIVOS 
- FPUTS E FERROR 
Escreve uma string em um arquivo: 
 
 
 
 ferror()  É uma função que retorna zero, 
se nenhum erro ocorreu e um número 
diferentes de zero se algum erro ocorreu 
durante o acesso ao arquivo. 
13 
PROJETO 2 
14 
PROJETO 2 
15 
LENDO E ESCREVENDO EM ARQUIVOS 
FPRINTF 
Os fluxos padrões em arquivos permitem ao 
programador ler e escrever em arquivos da 
maneira padrão com a qual já líamos e 
escrevíamos na tela; 
 
 - fprintf – funciona como a função printf(). A 
diferença é que a saída de fprintf() é um 
arquivo e não a tela do computador. 
16 
LENDO E ESCREVENDO EM ARQUIVOS 
FSCANF 
A função fscanf() funciona como a função 
scanf(). 
 
 
 
A diferença é que fscanf() lê de um arquivo 
de teclado 
 
Strings têm que ser tratadas via 
fgets(); 17 
LENDO E ESCREVENDO EM ARQUIVOS 
REMOVE E REWIND 
- rewind() – Retorna a posição corrente 
do arquivo para o início. 
 
 
 
- remove() – Apaga um arquivo 
específicado 
18 
LENDO E ESCREVENDO EM ARQUIVOS 
FSEEK 
Para se fazer procuras e acessos randômicos 
em arquivos usa-se a função fseek(). Esta 
move a posição corrente de leitura ou escrita no 
arquivo. Escopo: 
 
 
O parâmetro origem determina a partir de 
onde os numbytes de movimentação serão 
contados. Os valores possíveis são: 
19 
PROJETO 3 
ACRESCENTAR AO CÓDIGO 
– EXERCÍCIO 3 – AULA 9 
20

Continue navegando