Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula24 PDF
Aula24 PDF
357
Manipulao de Arquivos
A definio do ponteiro para arquivo tambm
est no arquivo stdio.h.
Podemos declarar um ponteiro de arquivo da
seguinte maneira:
FILE *p;
Os arquivos podem ser classificados em:
- binrios;
- texto.
358
Manipulao de Arquivos
- fopen()
Esta a funo de abertura de arquivos. Seu
prottipo :
FILE *fopen (char *nome_do_arquivo,char *modo);
359
360
Manipulao de Arquivos
Poderamos ento, para abrir um arquivo binrio
para escrita, escrever:
FILE *fp;
fp=fopen ("exemplo.bin","wb");
if (!fp)
printf ("Erro na abertura do arquivo.");
A condio !fp testa se o arquivo foi aberto com
sucesso porque no caso de um erro a funo
fopen() retorna um ponteiro nulo (NULL).
361
Manipulao de Arquivos
Uma vez aberto um arquivo, vamos poder ler ou
escrever nele utilizando as funes que sero
apresentadas a seguir.
Toda vez que estamos trabalhando com
arquivos, h uma espcie de posio atual no
arquivo. Esta a posio de onde ser lido ou
escrito o prximo dado. Normalmente, num acesso
seqencial a um arquivo, no temos que mexer
nesta posio pois quando lemos um dado a
posio no arquivo automaticamente atualizada.
Num acesso randmico teremos que mexer nesta
posio.
362
Manipulao de Arquivos
- fclose
Quando acabamos de usar um arquivo que
abrimos, devemos fech-lo. Para tanto usa-se a
funo fclose(), cujo prottipo :
int fclose (FILE *fp);
O ponteiro fp passado funo fclose()
determina o arquivo a ser fechado. A funo
retorna zero no caso de sucesso.
363
Manipulao de Arquivos
364
Manipulao de Arquivos
- putc
A funo putc a primeira funo de
escrita em arquivo que veremos. Seu
prottipo :
int putc (int ch, FILE *fp);
A referida funo escreve um caractere no
arquivo apontado por fp.
OBS.: fputc() equivalente a putc()
365
#include <stdio.h>
int main()
{
FILE *fp;
char string[100];
int i;
fp = fopen("arquivo.txt","w");
if(!fp)
{
printf( "Erro na abertura do arquivo");
exit(1);
}
printf("Entre com a string a ser gravada no arquivo:");
gets(string);
for(i=0; string[i]; i++)
putc(string[i], fp);
fclose(fp);
return 0;
}
366
Manipulao de Arquivos
Exerccio:
Com o que vimos at o momento sobre
manipulao de arquivos. Construa um
funo em C que possua a capacidade de
escrever um inteiro em um arquivo binrio.
Escreva um programa que se utiliza
adequadamente da funo que voc
projetou.
367