THOUSANDS OF FREE BLOGGER TEMPLATES

terça-feira, 7 de outubro de 2008

Manipulaçao de ficheiro em linguagem C

Ano novo matéria nova e modulo 7 ;)
Hoje o meu post vai falar sobre Manipulação de ficheiros. Apesar do assunto se dividir entre duas matérias (manipulação de ficheiros de texto e manipulaçao de ficheiros binarios) apenas vou falar do que aprendi que foi manipulaçao de ficheiros de texto.

Ficheiros de texto são aqueles que contêm caracteres perceptíveis para o ser humano (que conseguimos entender). São caracteres da tabela ASCII como algarismos, letras do alfabeto, caracteres de acentuação, pontução entre muitos outros.
Começamos por aprender a abrir e fechar ficheiros atraves de "fopen" e "fclose"

fopen é uma operação que consiste em mandar o programa aceder ao ficheiro, associando-o a uma variável (ficheiro p.ex.);
Para poder abri-lo também é necessário indicar o nome do ficheiro existente na mesma pasta onde esta gravado o programa (“dados.txt” p.ex.) e o modo de abertura que pode ser:
"r" - leitura do ficheiro (permite ler mas nao escrever)
"w" - escrita (permite escrever mas nao ler)
estes foram os mais usados apesar de existirem mais foi os unicos que usamos para ja.

fclose vai eliminar a ligação criada entre o programa e a variável associada ao ficheiro (antes de o fazer verifica que os dados foram gravados).

Para ajudar a perceber clique aqui para fazer o download de um programa basico sobre isto



Depois disto começamos a fazer a leitura de texto no ficheiro atraves da abordagem byte-a-byte ou caracter a caracter. Isto basea-se nas funçoes fgetc e fputc.

fgetc:

http://www.4shared.com/file/65977933/70a028c2/manipulaao_ficheiros.html

Neste programa:


O ficheiro é aberto no modo de leitura mas como nao e perguntado nada parte-se do princípio que o ficheiro existe e ja esta criado com o nome "texto.txt".

Cada caracter lido não é armazenado numa variável, sendo utilizado apenas na condição do ciclo “while”.

Foi utilizado um ciclo “while” para percorrer o ficheiro byte-a-byte, utilizando a constante simbólica EOF para controlar o fim do ficheiro (EOF=End Of File, cujo valor é -1).

No final este programa conta os caracteres escritos no ficheiro "texto.c".

fputc:

A variavel fputc armazena um caracter ou uma cadeia de caracteres num ficheiro.

http://www.4shared.com/file/65978703/970465d/manipulaao_ficheiros2.html


Neste programa:


O ficheiro é aberto no modo de escrita “w”, assim, caso não exista será criado, e caso exista será substituído.

A string é percorrida caracter-a-caracter até ser detectado o seu terminador, ou seja, o caracter ”.

A instrução fputc(texto[i++], fp); primeiro escreve o caracter no ficheiro, e de seguida incrementa o valor de i.

Basicamente foi isto que aprendemos nas ultimas aulas e que foi testado na prova pratica da ultima semana pode e nao ter corrido muito bem :P

Mais a frente irei publicar outro post com outras noções mas para ja fico.me por aqui

(07-10-08)







0 comentários: