SlideShare uma empresa Scribd logo
1 de 5
Programação I: Arquivos
Rodrigo Paes
Rodrigo Paes – rodrigo@ic.ufal.br
Instituto de Computação – UFAL
Objetivos
 Introduzir as principais funções para a
manipulação de arquivos em C
 Ao final desta aula o aluno deverá ser capaz de:
 Escrever programas que gravem e leiam arquivos
binários ou de texto
 Com o auxílio do livro ou de referências para as funções de
manipulação de arquivos
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Agenda
 O que são arquivos
 Arquivos Binários X Arquivos de Texto
 Arquivos Binários
 Tipo: FILE
 fopen()
 http://www.cplusplus.com/reference/clibrary/cstdio/fopen/
 fwrite()
 fread()
 Localizando registos
 ftell()
 fgetpos()
 Atualização
 fsetpos()
 Arquivo de Texto
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Exercício (e16)
 Faça um programa para calcular o valor a ser
pago pelos passageiros de uma companhia
aérea. O programa deverá ler o preço das
passagens de um arquivo binário chamado
PRECO.BIN. O arquivo contém 10 registros com
código (inteiro) e preço (real). A seguir o
programa deverá ler o arquivo binário
PASSAGEM.BIN com o nome dos passageiros
(campo com 33 posições) e código da
passagem. Deverá ser gerado um arquivo
binário chamado TOTAL.BIN contendo o nome
do passageiro e o valor a ser pago por ele.
Rodrigo Paes – r0drigopaes@yahoo.com.br
Instituto de Computação – UFAL
Exercício (e17)
 Resolvedor
 Entrada (txt):
 2
 -7
 -5
 Saída (txt):
 16.43
 -2.43
 Como verificarei as respostas?
 equacao.exe meuarquivo.txt saida.txt
 verificador.exe esperado.txt saida.txt
 Sem raízes: #
 Não é equação: @
Rodrigo Paes – r0drigopaes@yahoo.com.br

Mais conteúdo relacionado

Semelhante a Aula 16 arquivos - Programação 1

Apostila de Linguagem C
Apostila de Linguagem CApostila de Linguagem C
Apostila de Linguagem CDaniel Barão
 
Laboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoLaboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoAlex Camargo
 
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildoFernando Chuva
 
Laboratório de Programação I: Arquivos (binários) em disco
Laboratório de Programação I: Arquivos (binários) em discoLaboratório de Programação I: Arquivos (binários) em disco
Laboratório de Programação I: Arquivos (binários) em discoAlex Camargo
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FilePaulo Brito
 
Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)Peter Mello
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem corvel
 
Teste sumativo so mod.4
Teste sumativo  so mod.4Teste sumativo  so mod.4
Teste sumativo so mod.4Susana Maia
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livreelliando dias
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia iFábio Costa
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia iFábio Costa
 
Aula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHPAula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHPLucas Augusto Fagundes
 
Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Anderson Favaro
 

Semelhante a Aula 16 arquivos - Programação 1 (20)

Aula4
Aula4Aula4
Aula4
 
Apostila de Linguagem C
Apostila de Linguagem CApostila de Linguagem C
Apostila de Linguagem C
 
Apresentação faef
Apresentação faefApresentação faef
Apresentação faef
 
Laboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em discoLaboratório de Programação I: Arquivos (texto) em disco
Laboratório de Programação I: Arquivos (texto) em disco
 
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro  -estruturas_de_dados_e_algoritmos_em_c.erivanildoLivro  -estruturas_de_dados_e_algoritmos_em_c.erivanildo
Livro -estruturas_de_dados_e_algoritmos_em_c.erivanildo
 
Laboratório de Programação I: Arquivos (binários) em disco
Laboratório de Programação I: Arquivos (binários) em discoLaboratório de Programação I: Arquivos (binários) em disco
Laboratório de Programação I: Arquivos (binários) em disco
 
Criando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe FileCriando e Lendo Arquivos TXT com a Classe File
Criando e Lendo Arquivos TXT com a Classe File
 
Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)Introdução ao Spider CPM (2)
Introdução ao Spider CPM (2)
 
15. introducao ao c++
15. introducao ao c++15. introducao ao c++
15. introducao ao c++
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem c
 
Tic linux niv
Tic linux nivTic linux niv
Tic linux niv
 
Teste sumativo so mod.4
Teste sumativo  so mod.4Teste sumativo  so mod.4
Teste sumativo so mod.4
 
Apostila de dev
Apostila de devApostila de dev
Apostila de dev
 
Php01
Php01Php01
Php01
 
Desenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software LivreDesenvolvendo Aplicações com Software Livre
Desenvolvendo Aplicações com Software Livre
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia i
 
Aula 04 ferramentas para autoria de produtos multimídia i
Aula 04   ferramentas para autoria de produtos multimídia iAula 04   ferramentas para autoria de produtos multimídia i
Aula 04 ferramentas para autoria de produtos multimídia i
 
Apostila linguagem c
Apostila linguagem cApostila linguagem c
Apostila linguagem c
 
Aula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHPAula 7_8-Upload e contador de acessos com PHP
Aula 7_8-Upload e contador de acessos com PHP
 
Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00Sistemas Operacionais 2 -aula00
Sistemas Operacionais 2 -aula00
 

Mais de Isaac Barros

Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Isaac Barros
 
Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Isaac Barros
 
Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Isaac Barros
 
Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Isaac Barros
 
Aula 11 strings - Programação 1
Aula 11 strings - Programação 1Aula 11 strings - Programação 1
Aula 11 strings - Programação 1Isaac Barros
 
Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Isaac Barros
 
Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Isaac Barros
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Isaac Barros
 
Aula 6 - Programação 1
Aula 6 - Programação 1Aula 6 - Programação 1
Aula 6 - Programação 1Isaac Barros
 
Aula 5 - Programação 1
Aula 5 - Programação 1Aula 5 - Programação 1
Aula 5 - Programação 1Isaac Barros
 
Aula 4 - Programação 1
Aula 4 - Programação 1Aula 4 - Programação 1
Aula 4 - Programação 1Isaac Barros
 
Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1Isaac Barros
 
Aula 2 - Programação 1
Aula 2 - Programação 1Aula 2 - Programação 1
Aula 2 - Programação 1Isaac Barros
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1Isaac Barros
 

Mais de Isaac Barros (14)

Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1Aula 15 recursao-organizacao-arquivos - Programação 1
Aula 15 recursao-organizacao-arquivos - Programação 1
 
Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1Aula 14 estruturas - Programação 1
Aula 14 estruturas - Programação 1
 
Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1Aula 13 ponteiros - Programação 1
Aula 13 ponteiros - Programação 1
 
Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1Aula 12 funcoes - Programação 1
Aula 12 funcoes - Programação 1
 
Aula 11 strings - Programação 1
Aula 11 strings - Programação 1Aula 11 strings - Programação 1
Aula 11 strings - Programação 1
 
Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1Aula 10 arrays - Programação 1
Aula 10 arrays - Programação 1
 
Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1Aula 8 principios_programacao - Programação 1
Aula 8 principios_programacao - Programação 1
 
Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1Aula 7 decisao - Programação 1
Aula 7 decisao - Programação 1
 
Aula 6 - Programação 1
Aula 6 - Programação 1Aula 6 - Programação 1
Aula 6 - Programação 1
 
Aula 5 - Programação 1
Aula 5 - Programação 1Aula 5 - Programação 1
Aula 5 - Programação 1
 
Aula 4 - Programação 1
Aula 4 - Programação 1Aula 4 - Programação 1
Aula 4 - Programação 1
 
Aula 3 - Programação 1
Aula 3 - Programação 1Aula 3 - Programação 1
Aula 3 - Programação 1
 
Aula 2 - Programação 1
Aula 2 - Programação 1Aula 2 - Programação 1
Aula 2 - Programação 1
 
Aula 1 - Programação 1
Aula 1 - Programação 1Aula 1 - Programação 1
Aula 1 - Programação 1
 

Aula 16 arquivos - Programação 1

  • 1. Programação I: Arquivos Rodrigo Paes Rodrigo Paes – rodrigo@ic.ufal.br
  • 2. Instituto de Computação – UFAL Objetivos  Introduzir as principais funções para a manipulação de arquivos em C  Ao final desta aula o aluno deverá ser capaz de:  Escrever programas que gravem e leiam arquivos binários ou de texto  Com o auxílio do livro ou de referências para as funções de manipulação de arquivos Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 3. Instituto de Computação – UFAL Agenda  O que são arquivos  Arquivos Binários X Arquivos de Texto  Arquivos Binários  Tipo: FILE  fopen()  http://www.cplusplus.com/reference/clibrary/cstdio/fopen/  fwrite()  fread()  Localizando registos  ftell()  fgetpos()  Atualização  fsetpos()  Arquivo de Texto Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 4. Instituto de Computação – UFAL Exercício (e16)  Faça um programa para calcular o valor a ser pago pelos passageiros de uma companhia aérea. O programa deverá ler o preço das passagens de um arquivo binário chamado PRECO.BIN. O arquivo contém 10 registros com código (inteiro) e preço (real). A seguir o programa deverá ler o arquivo binário PASSAGEM.BIN com o nome dos passageiros (campo com 33 posições) e código da passagem. Deverá ser gerado um arquivo binário chamado TOTAL.BIN contendo o nome do passageiro e o valor a ser pago por ele. Rodrigo Paes – r0drigopaes@yahoo.com.br
  • 5. Instituto de Computação – UFAL Exercício (e17)  Resolvedor  Entrada (txt):  2  -7  -5  Saída (txt):  16.43  -2.43  Como verificarei as respostas?  equacao.exe meuarquivo.txt saida.txt  verificador.exe esperado.txt saida.txt  Sem raízes: #  Não é equação: @ Rodrigo Paes – r0drigopaes@yahoo.com.br