Você está na página 1de 5

FICHEIROS

Noo de ficheiros e tipos de ficheiros uma unidade de informao armazenada num suporte de memria secundria. Em programao, a distino entre ficheiros do tipo texto e ficheiros binrios tambm se aplica. Assim, em Pascal, os ficheiros em que se armazenam os dados com que os programas trabalham so de dois tipos principais: Ficheiros de texto So ficheiros em que a informao armazenada exclusivamente em formato caracteres ASCII. O acesso aos dados, neste tipo de ficheiros, do tipo sequencial, querendo isto dizer que a leitura dos dados no pode ser iniciada num qualquer ponto a escolher pelo utilizador, mas tem de partir sempre do inicio e percorrer todos os elementos at determinado ponto pretendido. Ficheiros de tipos definidos pelo utilizador So ficheiros que agrupam dados simples ou estruturados, em formato binrio, portanto, no legveis nem manipulveis fora do programa em que foram criados. Trata-se de ficheiros definidos pelo programador e podem assumir formas muito diferentes: Inteiros ou reais; Records; Permite uma grande flexibilidade de trabalho com sequncias de dados armazenados em suportes de memria secundria. O acesso aos dados pode ser feito de forma aleatria. Operaes com ficheiros de dados em geral

Em qualquer dos casos, os ficheiros dados ( tipo texto ou de tipos definidos pelo programador) podem ser manipulados com diversos tipos de operaes: 1. Tem de ser criado fisicamente num suporte de armazenamento, para em programao temos de: a. Declarar uma ou mais variveis do tipo ficheiro Text ou file b. Associar a varivel de ficheiro a criar numa directoria ou pasta do S.O; 2. Depois de criado o ficheiro, deve poder ser: a. Aberto, para leitura \escrita de dados, alteraes, etc; b. Fechado, para preservao fsica dois dados e para poder estar disponvel para novas operaes.

Operaes com ficheiros do tipo texto simples


1. Declarao de variveis de ficheiros do tipo texto Um ficheiro text um tipo de ficheiro predefinido da linguagem Pascal; isso faz com que a sua declarao possa ser feita de forma directa como uma varivel. A sua forma genrica pode ser assim:

Var <identificador>, <identificador>, {} : Text; 2. Associao de uma varivel de ficheiro com um nome de ficheiro Em Pascal, quando se declara uma varivel de ficheiro, no se est a designar o nome externo do ficheiro, mas apenas um identificador interno do programa. Torna-se necessrio associar a varivel ficheiro com um nome efectivo de ficheiro, ao nvel do S.O. Esta associao feita por meio do comando Assign. Assign(<identificador>, <nome de ficheiro>);

3. Criao fsica de um ficheiro de tipo texto e sua abertura para escrita

A criao fsica de um novo ficheiro feita mediante o comando Rewrite. Rewrite <identificador de ficheiro>;

4. A escrita de dados num ficheiro do tipo Text feita por meio de instrues write, sendo necessrio indicar indicar primeiro a varivel que identifica o ficheiro. Write\writeln(<identificador de ficheiro>, <dado> [, <dado> ]); 5. Fecho de um ficheiro de tipo texto Depois de ter sido criado, um ficheiro necessita de ser fechado para ficar fisicamente preparado para outras operaes. Close (<identificador de ficheiro>); 6. Reabertura de um ficheiro de tipo texto para leitura dos seus dados Para termos acesso aos dados contidos num ficheiro tipo Text, temos de comear~por uma instruo que abra esse ficheiro para leitura. Reset (<identificador de ficheiro>)

7. Leitura dos dados num ficheiro de tipo texto A leitura de dados no ficheiro feita por meio de instrues Read ou readln, sendo necessrio indicar a varivel que identifica o ficheiro e uma outra que recebe o dado lido Read (<identificador do ficheiro>, varivel)

8. Reabertura de um ficheiro de tipo texto para acrescento dos seus dados Instruo que abre um ficheiro para acrescento de dados. Append <identificador do ficheiro>;

Operaes com ficheiros de tipos definidos pelo programador

Os dados em ficheiros definidos pelo programador podem ser de tipo simples, como, por exemplo, integer, real, etc., ou de um tipo estruturado, como, por exemplo, um record. Outras caractersticas importantes, que diferem os ficheiros definidos pelo programador relativamente aos do tipo texto, so as seguintes: Num ficheiro definido com File, cada elemento tem um tamanho fixo e o nmero de elementos do ficheiro pode ser conhecido; Nos ficheiros definidos com File, podemos posicionar o ponteiro ou apontador do ficheiro num determinado elemento visado.

Num ficheiro definido pelo programador, o acesso a estes ficheiros do tipo directo ou aleatrio. O facto de os ficheiros de tipo definido pelo programador serem diferentes dos ficheiros do tipo texto faz com que algumas operaes de manipulao daqueles ficheiros tambm sejam diferentes; mas vrias operaes so idnticas. O processo de criao de ficheiros de tipo definido pelo programador utiliza os mesmos procedimentos predefinidos: 1. 2. 3. 4. 5. Declarar uma ou mais variveis de tipo ficheiro. Associar uma varivel de ficheiro com um nome externo de ficheiro: Assign. Criar um novo ficheiro: Rewrite. Abrir um ficheiro j existente: Reset. Fechar um ficheiro: close.

Append no vlido para este tipo de ficheiros. A escrita e leitura de dados em ficheiros deste gnero no pode ser feita com as variantes Writeln e Readln, pois, com estes ficheiros, no faz sentido a mudana da linha.

A escrita s pode ser feita com instrues Write; por exemplo: Write(Fich, dado). A leitura s pode ser feita com instrues Read; por exemplo: Read(Fich,dado). Existem duas funes e um procedimento predefinidos muito usados com estes ficheiros: Filisize(Fich) funo que nos d o tamanho, em nmero de elementos, que o ficheiro possui; Filepos(Fich) - funo que nos d a posio do ponteiro do ficheiro no momento, em termos do nmero de ordem dos seus elementos; Seek(Fich, n) procedimento que posiciona o ponteiro do ficheiro no nmero de ordem dos seus elementos indicado pela varivel n.

1.

Declarao de variveis de ficheiros definidos pelo utilizador

Um ficheiro de um tipo definido pelo programador tambm comea por ser declarado como uma varivel, mas utiliza os termos File Of e um tipo-base. A sua forma genrica pode ser: Var <identificador>, <identificador>, {}: File Of < identificador de tipo base>

2. Associao de uma varivel de ficheiro com um nome de ficheiro Esta operao efectuada de forma idntica que j vimos para os ficheiros do tipo Text. Em geral: Assign(<identificador>, <nome de ficheiro>);

3. Criao de um novo ficheiro de um tipo definido pelo utilizador A criao fsica de um novo ficheiro feita mediante o comando Rewrite, seguido do nome da varivel do ficheiro. A forma genrica : Rewrite < identificador de ficheiro> 4. Escrita de informao num ficheiro de um tipo definido pelo utilizador

A escrita de dados num ficheiro de um tipo pelo programador feita por meio de instrues Write, indicando dentro de parnteses a varivel que identifica o ficheiro e, em seguida, os dados a escrever no ficheiro. A forma genrica : Write\Writeln(<identificador de ficheiro>, < dado do tipo base do ficheiro>); 5. Fecho de um ficheiro de um tipo definido pelo utilizador Depois de criado, um ficheiro necessita de ser fechado para ficar completo e liberto para outras eventuais operaes: Close(<identificador de ficheiro>); 6. Reabertura de um ficheiro de tipo pelo uitlizador para acesso aos dados A instruo Reset abre o ficheiro no apenas para leitura, mas tambm para escrita ou qualquer tipo de acesso aos dados. Forma genrica: Reset (<identificador de ficheiro>) 7. Leitura dos dados num ficheiro de um tipo definido pelo utilizador A leitura de dados no ficheiro feita por meio da instruo Read. 8. Determinao da posio pretendida num ficheiro definido pelo utilizador Existem duas funes e um procedimento predefinidos (j referidos) bastante teis e utilizados neste tipo de ficheiros: Filesize, Filepos e Seek. 9. Acrescentar dados num ficheiro definido pelo utilizador 10. Alterar dados num ficheiro definido pelo utilizador

Você também pode gostar