Você está na página 1de 11

Manipulao de Arquivos

Devemos iniciar nossa explanao pelo conceito de arquivo: Arquivo uma unidade lgica utilizada para armazenar dados em disco ou em qualquer outro dispositivo externo de armazenamento. Pode-se abrir, fechar, ler, escrever ou apagar um arquivo. A linguagem C manipula tanto arquivos quanto dispositivos de I/O, se utilizando do conceito de ponteiro para arquivo. disponibilizada uma srie de funes para trabalhar com este conceito, cujos prottipos esto reunidos em stdio.h.

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

Fechar um arquivo faz com que qualquer dado que tenha permanecido no "buffer" associado ao fluxo de sada seja gravado. A funo exit() fecha todos os arquivos que um programa tiver aberto.

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

Você também pode gostar