3. Introdução
0 A linguagem C utiliza o conceito de fluxo
(stream) de dados para manipular vários tipos de
dispositivos de armazenamento.
0 Dados podem ser manipulados em dois
diferentes tipos de fluxos: fluxos de texto e
fluxos binários.
0 Um fluxo de texto é composto por uma sequência
de caracteres, que pode ou não ser dividida em
linhas terminadas por um caracter de final de
linha.
4. O que são ficheiros?
0 Os ficheiros são utilizados para guardar dados
(normalmente
em
grandes
quantidades), mesmo depois de os programas
terem terminado
0 Estando associado a qualquer dispositivo de
entrada e saída, como por exemplo:
teclado, vídeo, impressora, disco rígido, etc…
5. Como se trabalha nos ficheiros
em C
0 Para trabalhar com os ficheiros em C, a primeira
necessidade é ter uma maneira de aceder aos
ficheiros.
0 Para isso temos que utilizar um apontador do
ficheiro, que irá deixar o programa acompanhar
o ficheiro que está sendo acedido.
0 Por exemplo:
0 FILE *fp
6. 0 O processo de trabalhar com ficheiros
em C consiste em três etapas:
1. Abrir o ficheiro;
2. Ler e/ou gravar as informaçõeses
desejadas no ficheiro;
3. Fechar o ficheiro.
7.
8. Abrir
0 Antes de qualquer operação ser executada
com o ficheiro, ele deve ser aberto. Esta
operação associa um fluxo de dados a um
ficheiro.
0 Um ficheiro pode ser aberto de diversas
maneiras:
leitura, escrita, leitura/escrita, adicão de
texto, etc. A função utilizada para abrir o
ficheiro é fopen()
9.
10. Escrever
0 Para um programa ler e escrever em ficheiros de
texto, podemos utilizar as funções fscanf e fprintf.
0 A única diferença é que as funções têm um argumento
adicional que indica o ficheiro em que se pretende ler ou
escrever.
0 Exemplo:
0 fscanf( f, "%d", &n );
0 A função utilizada para escrever o ficheiro é fwrite()
11. Fechar
0Para fechar um arquivo previamente
aberto, a rotina fclose() pode ser usada.
0Ela recebe como argumento o
manipulador do ficheiro e não retorna
nenhum valor.
0Assim, após encerrada a operação com o
ficheiro a expressão fclose(); fecha-o.
12. Funções de entrada e saída
0 As funções mais usadas estão armazenadas na
biblioteca stdio.h
• fopen() - Abre um FICHEIRO
• fputc() - Escreve um caracter num FICHEIRO
• fgetc() - Lê um caracter dum FICHEIRO
• fputs() – escreve uma string numa FICHEIRO
• fgets() – lê uma linha de um FICHEIRO
• fprintf()- Equivalente a printf()
• fscanf() - Equivalente a scanf()
• rewind() - Posiciona o FICHEIRO no início
• feof() - Retorna verdadeiro se chegou ao fim do FICHEIRO
• fclose() – fecha