You are on page 1of 9
‘A uiezagio de argos em C (binds eu arquivas de text) ena te teu poner 1) Declaragle do arquivo etrants de un pantie de ie enpecticn Pa tf ru *pontedte arg: 2) Abertura de arquivo, cede 0 portire declorado & azecade ‘canerte ce snquv extern ctavée de chamae dee ‘nga expecifca(2open). ones de custo © gue ‘okat and ~ fopenC-nene_do_aeqaive" mode de abestux2") 3) Openagies com argues. através de funcies de maniplorbo de rquves (etre, serite, dene ours). Todas estes fangs ‘Fecabem come porte 0 ponte esocode oo arquve ‘1 Factamanto de argo, strevs do chanede de una funebo esc (shu), apse o fm Go precessnert selona paint ato: ‘Arquivos em C - Abertura do arquivo ‘Abre/eria/reeria um arquivo para permitir ua ‘manipulagdo. Pardmetres: "nome do arquivo” string com nome do arquivo fisico (completo ‘ou relative) mode de abertuza" string com mode de abertura desejade Arquivos em C - Declaragiio de ponteiro Para que um programa possa crlar ou utilizar um arquivo presristente, & preciso declarar um onteiro do tipo ¥xi2, que aponta para uma ‘estrutura de dados que tem as informacées sobre ‘9 arquivo (nome do arquivo, ende ele esté, seu tamanho, qual a posi¢do atual no arquivo, etc.) Sintaxe: FILE * ; Exemplos: Winctude int main) ‘ wenn tarqi; // declaragies sem FILE *arq2, "scores; // contetido Arquivos em C - Abertura do arquivo Sxomples: Ear tang, ‘ana, ‘argi) // dooiseasse arqa = Fopen("nighsoores.pin" 72D") | Serer aea2 = ropen *resuttados. txts, "~s") [eds Sarat fopen("C"\\tente\\arives "2b Lamar gue mane de reprenntr une me tg eterno: ponteire do tipo FILE pontendo para o ‘enderago inicial da estrutura de manpulegdo este arquivo ‘Atengio: Apis sbertura, verfiear SEMPRE se no trewve erro Fungo twrite: Esereve dados no arquivo a partir da posigdo corrente (na verdade, escreve no buffer ...) fwrite(evarbuffer, numbytes, quant, ara) Sendo: fevarmattor: —verével de onde devem ser lidos os dades a escrever (gravar) no arquivo usbyton: —nimero de bytes de cada unidede de des escrita do arquivo (usar a1z00¢) evant: ‘qantas unidades deve escrever axa! Ponteire FILE para o arquive ‘A fungdo incrementa a posigdo corrente & devolve 0 nimero de unidades escritas. Se for diferente de quant, porque aconteceu um erro na gravagéio do arquivo. Testar sempre! Fechamento do arquivo - exemplo fsncLude Fecha um streom de enquve Obs.: ao fechar 0 stream do arquive todos os dados ‘que cirda estavam ro buffer serso salvos em disco. ‘ Descarrego o contetdo em buffer para 0 arquivo sam fechar 0 stream Due Rearactere>, , ,) =} L2 una string/linha de um arquivo (Obs, a fungdo incu um'"\0" epés o fim da string, lego a fungi I@ até tananho-1 ou até um coractere de nova litha (\x) ser lide, odicionando-o & string. | tpats (, ) > Esereve ume string/litha num argu Apeintt (,<"fommaton">,) rewind () sm Irn se um arquivo chegeu go tin "Arona posi corente do angie para ine Devoe verdadero (nao-2er) se @ final Yi tingid cu felao (eer) cas conan [ Hack (QPTLE +> ,, Aovonene) | 1m} Renomela um arquivo ou o Move para um diretério destino (Obs. 0 arquivo deve ester fechadol anove(tomenonsquive>) sm) Apoge arquivo especie do disco ‘hero arate deve extorfechado! CUTDADOKRemeve sem per confimagdel Extracto de elementos variados de linhas de-um arquivo txt + Transforma Fungo ato conteido de um vetor de caracteres em un valor inteiro em binério (nt) Fungo fgets + Permit leita de una linha do arquivo como string + Formato ‘vetorenns onde canted da ha ser ormezenado — até 0 \ “anretor: nimero maxing de bytes ‘em vetorchor (rc VO) poneaasg: erguve de onde serd felts llture + Bxemplo: 77 sizing Lie Go ang @ expacensda om buffer Eaete (ousder'xt WAL, aea) | + Formato: + Exemple: Sec Snes SESE le stot (vatorenae): ‘wetoxchas: contoido a ser convertido BEC teriesiabreptonDoamente! TP esostora 112" «13° Fteprine S25, Fungao ato ‘Transforme 0 contetide de um vetor de caracteres em reel + Formato: __ ator (vetorchar) vetershar: conteuido a sor convertido BEE "CAUserscai\Dropbox + Exemplo: car ETE char Susi car steels ]=(°0 prints ("zeal prints (real & aos (ote) ator teres) + Tatee(atre)) BEAMEECreal 6 Fungo strtok + Extnal substrings (tokens) sueessivas de uma string, de ocordo om um separacor + Formata: “ ieiak (vetoichar "ainbalo_eeparadox” 17 ] Exempla 7] expacifies = sizing ao as princizs Srtsapo Steapy (subi, ainton (teertxt,",")) stropy (gub3, stxtok (WULL,™ (0 rome do veror € usado na fungi strtok apenas pare extra a Drimeira substring. Pane extragdo das demais substrings de uma Ines string, deve-se vror o constante BU: come prmeiro pardmetro das chamades subsequentes de atxzor (enquanto a [ering base for @ mesma, =tsto segue overgande pelas prsies ‘da string). Quando no houver mais nada a extrair, devolve NULL, Passos: 1. Ler toda a linha do arquivo como uma string “tgets) (fungde 2. Extrair da string lida substrings que correspondam ‘0s dades (fungdo atrtok). 3, Converter cada substring para o tipo de dado correspondente (fungées atoi. € atof)

You might also like