Novo
Eduardo S. Dobay
Outubro de 2007 O processo de trabalhar com arquivos em C consiste em trˆs etapas: e 1. Abrir o arquivo; 2. Ler e/ou gravar as informa¸˜es desejadas no arquivo; co 3. Fechar o arquivo.
1
Abrindo arquivos
Em C, para poder trabalhar em um arquivo, precisamos abri-lo, associando-o a uma vari´vel a interna do programa. Para isso, usamos vari´veis do tipo FILE * (cujo funcionamento interno a n˜o nos importa), que podem ser declaradas assim: a FILE *entrada; FILE *saida; O nome das vari´veis ´, repito, interno ao programa, de modo que poder´ a e ıamos ter escolhido bacalhau, Dom_Pedro_II ou trifosfato_de_adenosina, independentemente do nome do arquivo com que fˆssemos trabalhar. o Mas, calma, a associa¸˜o entre vari´vel e arquivo ainda n˜o foi feita. Quem faz isso ´ a fun¸˜o ca a a e ca fopen, que funciona da seguinte maneira: entrada = fopen("arquivo_entrada.txt", "r"); saida = fopen("arquivo_saida.txt", "w"); Essa fun¸˜o precisa de dois parˆmetros, dos quais o primeiro ´ o mais ´bvio: o nome do ca a e o arquivo. O segundo parˆmetro diz ao computador o que pretendemos fazer com o arquivo: gravar a (“w”, de write) ou ler dados (“r”, de read ). No final, se tudo tiver dado certo, essas vari´veis a conter˜o um tipo de referˆncia aos arquivos que abrimos. S˜o essas vari´veis que iremos usar a e a a quando formos ler e gravar nossos dados. Veja que, ao abrir um arquivo para grava¸˜o, pode acontecer de j´ existir um arquivo com ca a o mesmo nome que vocˆ pediu. Se isso ocorrer, o arquivo existente ser´ apagado, e o que vocˆ e a e gravar ficar´ no lugar do arquivo antigo. Caso contr´rio, o programa simplesmente criar´ um a a a arquivo novo, com o nome que vocˆ pediu. Se o que vocˆ quer ´ apenas adicionar dados ao final e e e do arquivo, sem apagar nada, vocˆ pode usar, no lugar da letra w, a letra “a” (de append ). e
1.1
Problemas
Existem algumas situa¸˜es que podem impedi-lo de abrir um arquivo: co • O arquivo