SlideShare uma empresa Scribd logo
1 de 24
Baixar para ler offline
Arquivos (texto) em discoArquivos (texto) em disco
Prof. Alex Camargo
alexcamargoweb@gmail.com
UNIVERSIDADE FEDERAL DO PAMPA
CAMPUS BAGÉ
LABORATÓRIO DE PROGRAMAÇÃO I
Manipulação de Arquivos em C
Até agora, foi visto a manipulação de dados em memória RAM.
 A memória RAM é volátil.
 Algumas vezes é necessária a persistência dos dados, que é o
armazenamento não-volátil.
 Assim, o armazenamento não-volátil pode ser feito no HD,
através de arquivos.
Laboratório de Programação I – Arquivos (texto) em disco
Manipulação de Arquivos em C
O primeiro passo para manipular um arquivo em C, é abri-lo.
 A linguagem C manipula arquivos em alto-nível ou baixo-nível.
 Durante a abertura do arquivo, a linguagem C necessita obter
do sistema operacional algumas informações sobre este
arquivo.
 Estas informações obtidas ficam armazenadas em um ponteiro.
Laboratório de Programação I – Arquivos (texto) em disco
Manipulação de Arquivos em C
Para manipular um arquivo em alto-nível, existem 4 grupos de
funções:
 1: Gravar e ler 1 caractere por vez: funções fputc() e fgetc()
 2: Gravar e ler 1 linha por vez: funções fputs() e fgets()
 3: Gravar e ler dados formatados: funções fprintf() e fscanf()
 4: Gravar e ler blocos de bytes: funções fwrite() e fread()
Laboratório de Programação I – Arquivos (texto) em disco
fopen()
A abertura de arquivos em C é realizada através da função
fopen.
 Se houver algum erro, a função fopen retorna NULL.
 mode é usado para determinar como o arquivo será tratado.
Ex: entrada “r” (read) ou saída “w” (write)
Laboratório de Programação I – Arquivos (texto) em disco
fopen()
Laboratório de Programação I – Arquivos (texto) em disco
fopen()
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 1: fputc()
A função fputc escreve um caracter char em um arquivo de
saída.
 O valor de retorno é o caracter, a menos que haja um erro,
caso no qual o valor de retorno é EOF.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 1: fputc()
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 1: fgetc()
A função fgetc retorna o próximo caracter char de um arquivo
de entrada.
 O valor de retorno é o próximo caracter do arquivo, EOF se o
final do arquivo foi alcançado ou se ocorreu algum erro.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 1: fgetc()
Laboratório de Programação I – Arquivos (texto) em disco
Exercícios
Responda as seguintes questões referentes ao “Grupo 1: fputc() e
fgetc()” de manipulação de arquivos em alto-nível em C.
1. Desenvolva um programa que recebe frases digitadas pelo usuário e
grave este conteúdo, caracter a caracter (variável = getchar()), em um
arquivo. O programa deve ser encerrado quando o usuário digitar a
tecla ENTER (n).
2. Desenvolva um programa que leia, caracter a caracter
(variável=fgetc(arquivo)), o conteúdo de um arquivo. O programa deve
ser encerrado quando o final do arquivo (EOF) for encontrado.
Algoritmos e Programação - Estruturas de repetição
Exercício 1
Algoritmos e Programação - Estruturas de repetição
Exercício 2
Algoritmos e Programação - Estruturas de repetição
Grupo 2: fputs()
A função fputs escreve caracteres string em um arquivo de
saída.
 Funciona como o puts(), que escreve na tela, porém escreve a
string em um arquivo.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 2: fputs()
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 2: fgets()
A função fgets lê uma string do arquivo especificado até que um
caracter de nova linha (n) ou tamanho-1 caracteres sejam lidos.
 Funciona como gets(), que lê uma string de uma variável,
porém lê a string em um arquivo.
 A string resultante sempre terminará com "/0", por isto
somente tamanho-1 caracteres, no máximo, serão lidos.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 2: fgets()
Laboratório de Programação I – Arquivos (texto) em disco
Exercícios
Responda as seguintes questões referentes ao “Grupo 2: fputs() e
fgets()” de manipulação de arquivos em alto-nível em C.
1. Escreva um programa que peça o nome, telefone e endereço. O
programa deve gravar o conteúdo em um arquivo texto da seguinte
maneira:
Nome: Fulano
Telefone: 53-99999999
Endereço: Sete de Setembro, 12345
2. Desenvolva um programa que leia o conteúdo do arquivo do
exercício anterior, para isso utilize o fgets().
Algoritmos e Programação - Estruturas de repetição
Grupo 3: fprintf()
A função fprintf escreve uma constante de caracteres em um
arquivo de saída.
 Funciona como o printf, sendo que a diferença é a saída
padrão, que em fprintf é um arquivo e em printf é o monitor.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 3: fprintf()
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 3: fscanf()
A função fscanf lê uma constante de caracteres em um arquivo
de entrada.
 Funciona como o scanf, sendo que a diferença é a entrada
padrão, que em fscanf é um arquivo e em scanf é o teclado.
Laboratório de Programação I – Arquivos (texto) em disco
Grupo 3: fscanf()
Laboratório de Programação I – Arquivos (texto) em disco
Exercícios
Responda as seguintes questões referentes ao “Grupo 3: fprintf() e
fscanf()” de manipulação de arquivos em alto-nível em C.
1. Escreva um programa que pergunte ao usuário o tipo de lista de
compras ele deseja criar: Padaria ou Churrasco. O programa deve
gravar os itens em um arquivo texto até o usuário digitar 0 (zero),
ficando da seguinte maneira, por exemplo:
PADARIA CHURRASCO
pão carvão
manteiga picanha
café refrigerante
….. ...
2. Desenvolva um programa que leia o conteúdo do arquivo do
exercício anterior, para isso utilize o fscanf().
Algoritmos e Programação - Estruturas de repetição

Mais conteúdo relacionado

Mais procurados

Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsHelio Colombe
 
Files e File System PHP (Português)
Files e File System PHP (Português)Files e File System PHP (Português)
Files e File System PHP (Português)Emerson Silva
 
Introdução à linguagem Python
Introdução à linguagem PythonIntrodução à linguagem Python
Introdução à linguagem PythonAlex Tercete
 
Engenharia Reversa no Linux
Engenharia Reversa no LinuxEngenharia Reversa no Linux
Engenharia Reversa no LinuxFernando Mercês
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em PythonRodrigo Hübner
 
Operadores de redirecionamento
Operadores de redirecionamentoOperadores de redirecionamento
Operadores de redirecionamentoIvani Nascimento
 
Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Vitor Krewer
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonPriscila Mayumi
 
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsLinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsFernando Mercês
 
Introdução ao Linux - aula 03 e 04
Introdução ao Linux - aula 03 e 04Introdução ao Linux - aula 03 e 04
Introdução ao Linux - aula 03 e 04Renan Aryel
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alvesGrupython Ufla
 
Programação em bat
Programação em batProgramação em bat
Programação em bathackernoob
 
Introdução aos comandos Linux
Introdução aos comandos LinuxIntrodução aos comandos Linux
Introdução aos comandos LinuxCarlos Quadros
 
Introdução à linguagem de programação Python
Introdução à linguagem de programação PythonIntrodução à linguagem de programação Python
Introdução à linguagem de programação PythonCarlos Schults
 
Comandos básicos linux
Comandos básicos linuxComandos básicos linux
Comandos básicos linuxLuciano Souto
 

Mais procurados (20)

Curso de Python (Básico) - Português
Curso de Python (Básico) - PortuguêsCurso de Python (Básico) - Português
Curso de Python (Básico) - Português
 
Aulas linux
Aulas linuxAulas linux
Aulas linux
 
Files e File System PHP (Português)
Files e File System PHP (Português)Files e File System PHP (Português)
Files e File System PHP (Português)
 
Introdução à linguagem Python
Introdução à linguagem PythonIntrodução à linguagem Python
Introdução à linguagem Python
 
Engenharia Reversa no Linux
Engenharia Reversa no LinuxEngenharia Reversa no Linux
Engenharia Reversa no Linux
 
Python - Introdução
Python - IntroduçãoPython - Introdução
Python - Introdução
 
Introdução à Programação em Python
Introdução à Programação em PythonIntrodução à Programação em Python
Introdução à Programação em Python
 
Operadores de redirecionamento
Operadores de redirecionamentoOperadores de redirecionamento
Operadores de redirecionamento
 
Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010Prova Comentada - BANRISUL Escriturário 2010
Prova Comentada - BANRISUL Escriturário 2010
 
Editor de texto VI
Editor de texto VIEditor de texto VI
Editor de texto VI
 
Apresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação PythonApresentando a Linguagem de Programação Python
Apresentando a Linguagem de Programação Python
 
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux SystemsLinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
LinuxCon 2010: Tutorial - Reverse Engineering on GNU/Linux Systems
 
Introdução ao Linux - aula 03 e 04
Introdução ao Linux - aula 03 e 04Introdução ao Linux - aula 03 e 04
Introdução ao Linux - aula 03 e 04
 
Apresentação python fábio jr alves
Apresentação python   fábio jr alvesApresentação python   fábio jr alves
Apresentação python fábio jr alves
 
Programação em bat
Programação em batProgramação em bat
Programação em bat
 
Introdução aos comandos Linux
Introdução aos comandos LinuxIntrodução aos comandos Linux
Introdução aos comandos Linux
 
Introdução à linguagem de programação Python
Introdução à linguagem de programação PythonIntrodução à linguagem de programação Python
Introdução à linguagem de programação Python
 
Aula 06 comandos linux
Aula 06   comandos linuxAula 06   comandos linux
Aula 06 comandos linux
 
Comandos básicos linux
Comandos básicos linuxComandos básicos linux
Comandos básicos linux
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 

Semelhante a Laboratório de Programação I: Arquivos (texto) em disco

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
 
Arquivos slides aula25
Arquivos slides aula25Arquivos slides aula25
Arquivos slides aula25AlanoG
 
Shell script do zero aula 1 - basico do basico e primeiros comandos
Shell script do zero    aula 1 - basico do basico e primeiros comandosShell script do zero    aula 1 - basico do basico e primeiros comandos
Shell script do zero aula 1 - basico do basico e primeiros comandosIvan Ribeiro
 
Curso de shell
Curso de shellCurso de shell
Curso de shellTiago
 
Curso de shell
Curso de shellCurso de shell
Curso de shellTiago
 
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Os Fantasmas !
 
Programando em python arquivos
Programando em python   arquivosProgramando em python   arquivos
Programando em python arquivossamuelthiago
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linuxguilhermeoki
 
(03) shell e comandos basicos[1]
(03) shell e comandos basicos[1](03) shell e comandos basicos[1]
(03) shell e comandos basicos[1]Anderson Lago
 
Comandos Básicos do Linux.pptx
Comandos Básicos do Linux.pptxComandos Básicos do Linux.pptx
Comandos Básicos do Linux.pptxLucasASantos1
 
Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04thomasdacosta
 

Semelhante a Laboratório de Programação I: Arquivos (texto) em disco (20)

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
 
Arquivos slides aula25
Arquivos slides aula25Arquivos slides aula25
Arquivos slides aula25
 
Shell script do zero aula 1 - basico do basico e primeiros comandos
Shell script do zero    aula 1 - basico do basico e primeiros comandosShell script do zero    aula 1 - basico do basico e primeiros comandos
Shell script do zero aula 1 - basico do basico e primeiros comandos
 
Curso de shell
Curso de shellCurso de shell
Curso de shell
 
Curso de shell
Curso de shellCurso de shell
Curso de shell
 
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
Capítulo 15 Livro Algoritmos e Programação de Computadores Autores JR., Diler...
 
Aula 10 semana
Aula 10 semanaAula 10 semana
Aula 10 semana
 
Linux Ubuntu
Linux   UbuntuLinux   Ubuntu
Linux Ubuntu
 
Comandos Shell
Comandos ShellComandos Shell
Comandos Shell
 
Workshop Python.2
Workshop Python.2Workshop Python.2
Workshop Python.2
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Ficheiros texto
Ficheiros textoFicheiros texto
Ficheiros texto
 
Shell Scipt - Comandos
Shell Scipt - ComandosShell Scipt - Comandos
Shell Scipt - Comandos
 
Programando em python arquivos
Programando em python   arquivosProgramando em python   arquivos
Programando em python arquivos
 
Linux shell
Linux shellLinux shell
Linux shell
 
Introduction to linux
Introduction to linuxIntroduction to linux
Introduction to linux
 
(03) shell e comandos basicos[1]
(03) shell e comandos basicos[1](03) shell e comandos basicos[1]
(03) shell e comandos basicos[1]
 
Uso de arquivos na linguagem Java
Uso de arquivos na linguagem Java Uso de arquivos na linguagem Java
Uso de arquivos na linguagem Java
 
Comandos Básicos do Linux.pptx
Comandos Básicos do Linux.pptxComandos Básicos do Linux.pptx
Comandos Básicos do Linux.pptx
 
Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04Programação Estruturada 2 - Aula 04
Programação Estruturada 2 - Aula 04
 

Mais de Alex Camargo

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaAlex Camargo
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - DemonologiaAlex Camargo
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosAlex Camargo
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?Alex Camargo
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasAlex Camargo
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaAlex Camargo
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!Alex Camargo
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Alex Camargo
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoAlex Camargo
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlex Camargo
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeAlex Camargo
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoAlex Camargo
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)Alex Camargo
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Alex Camargo
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoAlex Camargo
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020Alex Camargo
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alexAlex Camargo
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial IntelligenceAlex Camargo
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finaisAlex Camargo
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Alex Camargo
 

Mais de Alex Camargo (20)

Escola Bíblica - Eclesiologia
Escola Bíblica - EclesiologiaEscola Bíblica - Eclesiologia
Escola Bíblica - Eclesiologia
 
Escola Bíblica - Demonologia
Escola Bíblica - DemonologiaEscola Bíblica - Demonologia
Escola Bíblica - Demonologia
 
Python para finanças: explorando dados financeiros
Python para finanças: explorando dados financeirosPython para finanças: explorando dados financeiros
Python para finanças: explorando dados financeiros
 
A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?A practical guide: How to use Bitcoins?
A practical guide: How to use Bitcoins?
 
IA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínasIA e Bioinformática: modelos computacionais de proteínas
IA e Bioinformática: modelos computacionais de proteínas
 
Introdução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurançaIntrodução às criptomoedas: investimento, mercado e segurança
Introdução às criptomoedas: investimento, mercado e segurança
 
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!Introdução às criptomoedas:  criando a sua própria moeda como o Bitcoin!
Introdução às criptomoedas: criando a sua própria moeda como o Bitcoin!
 
Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)Cristão versus Redes Sociais - Alex (Arca da Aliança)
Cristão versus Redes Sociais - Alex (Arca da Aliança)
 
Empatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom SamaritanoEmpatia e compaixão: O Bom Samaritano
Empatia e compaixão: O Bom Samaritano
 
Alta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem praticaAlta performance em IA: uma abordagem pratica
Alta performance em IA: uma abordagem pratica
 
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidadeBioinformática do DNA ao medicamento: ferramentas e usabilidade
Bioinformática do DNA ao medicamento: ferramentas e usabilidade
 
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mãoInteligência Artificial aplicada: reconhecendo caracteres escritos à mão
Inteligência Artificial aplicada: reconhecendo caracteres escritos à mão
 
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
IA versus COVID-19 Deep Learning, Códigos e Execução em nuvem (Tchelinux 2020)
 
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...Algoritmos de inteligência artificial para classificação de notícias falsas. ...
Algoritmos de inteligência artificial para classificação de notícias falsas. ...
 
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigaçãoFake News - Conceitos, métodos e aplicações de identificação e mitigação
Fake News - Conceitos, métodos e aplicações de identificação e mitigação
 
PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020PredictCovid: IA. SIEPE UNIPAMPA 2020
PredictCovid: IA. SIEPE UNIPAMPA 2020
 
Ia versus covid 19 - alex
Ia versus covid 19 - alexIa versus covid 19 - alex
Ia versus covid 19 - alex
 
2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence2a Mini-conf PredictCovid. Field: Artificial Intelligence
2a Mini-conf PredictCovid. Field: Artificial Intelligence
 
Aula 5 - Considerações finais
Aula 5 - Considerações finaisAula 5 - Considerações finais
Aula 5 - Considerações finais
 
Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)Aula 04 - Injeção de código (Cross-Site Scripting)
Aula 04 - Injeção de código (Cross-Site Scripting)
 

Último

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfjanainadfsilva
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - DissertaçãoMaiteFerreira4
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?AnabelaGuerreiro7
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.silves15
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficasprofcamilamanz
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdfLeloIurk1
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfMarianaMoraesMathias
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxLuizHenriquedeAlmeid6
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfLeloIurk1
 

Último (20)

PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdfPortfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
Portfolio_Trilha_Meio_Ambiente_e_Sociedade.pdf
 
análise de redação completa - Dissertação
análise de redação completa - Dissertaçãoanálise de redação completa - Dissertação
análise de redação completa - Dissertação
 
Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?Urso Castanho, Urso Castanho, o que vês aqui?
Urso Castanho, Urso Castanho, o que vês aqui?
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.A horta do Senhor Lobo que protege a sua horta.
A horta do Senhor Lobo que protege a sua horta.
 
Atividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas GeográficasAtividades sobre Coordenadas Geográficas
Atividades sobre Coordenadas Geográficas
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
5 bloco 7 ano - Ensino Relogioso- Lideres Religiosos _ Passei Direto.pdf
 
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdfPROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
PROGRAMA DE AÇÃO 2024 - MARIANA DA SILVA MORAES.pdf
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptxSlides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
Slides Lição 5, CPAD, Os Inimigos do Cristão, 2Tr24, Pr Henrique.pptx
 
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdfENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
ENSINO RELIGIOSO 7º ANO INOVE NA ESCOLA.pdf
 

Laboratório de Programação I: Arquivos (texto) em disco

  • 1. Arquivos (texto) em discoArquivos (texto) em disco Prof. Alex Camargo alexcamargoweb@gmail.com UNIVERSIDADE FEDERAL DO PAMPA CAMPUS BAGÉ LABORATÓRIO DE PROGRAMAÇÃO I
  • 2. Manipulação de Arquivos em C Até agora, foi visto a manipulação de dados em memória RAM.  A memória RAM é volátil.  Algumas vezes é necessária a persistência dos dados, que é o armazenamento não-volátil.  Assim, o armazenamento não-volátil pode ser feito no HD, através de arquivos. Laboratório de Programação I – Arquivos (texto) em disco
  • 3. Manipulação de Arquivos em C O primeiro passo para manipular um arquivo em C, é abri-lo.  A linguagem C manipula arquivos em alto-nível ou baixo-nível.  Durante a abertura do arquivo, a linguagem C necessita obter do sistema operacional algumas informações sobre este arquivo.  Estas informações obtidas ficam armazenadas em um ponteiro. Laboratório de Programação I – Arquivos (texto) em disco
  • 4. Manipulação de Arquivos em C Para manipular um arquivo em alto-nível, existem 4 grupos de funções:  1: Gravar e ler 1 caractere por vez: funções fputc() e fgetc()  2: Gravar e ler 1 linha por vez: funções fputs() e fgets()  3: Gravar e ler dados formatados: funções fprintf() e fscanf()  4: Gravar e ler blocos de bytes: funções fwrite() e fread() Laboratório de Programação I – Arquivos (texto) em disco
  • 5. fopen() A abertura de arquivos em C é realizada através da função fopen.  Se houver algum erro, a função fopen retorna NULL.  mode é usado para determinar como o arquivo será tratado. Ex: entrada “r” (read) ou saída “w” (write) Laboratório de Programação I – Arquivos (texto) em disco
  • 6. fopen() Laboratório de Programação I – Arquivos (texto) em disco
  • 7. fopen() Laboratório de Programação I – Arquivos (texto) em disco
  • 8. Grupo 1: fputc() A função fputc escreve um caracter char em um arquivo de saída.  O valor de retorno é o caracter, a menos que haja um erro, caso no qual o valor de retorno é EOF. Laboratório de Programação I – Arquivos (texto) em disco
  • 9. Grupo 1: fputc() Laboratório de Programação I – Arquivos (texto) em disco
  • 10. Grupo 1: fgetc() A função fgetc retorna o próximo caracter char de um arquivo de entrada.  O valor de retorno é o próximo caracter do arquivo, EOF se o final do arquivo foi alcançado ou se ocorreu algum erro. Laboratório de Programação I – Arquivos (texto) em disco
  • 11. Grupo 1: fgetc() Laboratório de Programação I – Arquivos (texto) em disco
  • 12. Exercícios Responda as seguintes questões referentes ao “Grupo 1: fputc() e fgetc()” de manipulação de arquivos em alto-nível em C. 1. Desenvolva um programa que recebe frases digitadas pelo usuário e grave este conteúdo, caracter a caracter (variável = getchar()), em um arquivo. O programa deve ser encerrado quando o usuário digitar a tecla ENTER (n). 2. Desenvolva um programa que leia, caracter a caracter (variável=fgetc(arquivo)), o conteúdo de um arquivo. O programa deve ser encerrado quando o final do arquivo (EOF) for encontrado. Algoritmos e Programação - Estruturas de repetição
  • 13. Exercício 1 Algoritmos e Programação - Estruturas de repetição
  • 14. Exercício 2 Algoritmos e Programação - Estruturas de repetição
  • 15. Grupo 2: fputs() A função fputs escreve caracteres string em um arquivo de saída.  Funciona como o puts(), que escreve na tela, porém escreve a string em um arquivo. Laboratório de Programação I – Arquivos (texto) em disco
  • 16. Grupo 2: fputs() Laboratório de Programação I – Arquivos (texto) em disco
  • 17. Grupo 2: fgets() A função fgets lê uma string do arquivo especificado até que um caracter de nova linha (n) ou tamanho-1 caracteres sejam lidos.  Funciona como gets(), que lê uma string de uma variável, porém lê a string em um arquivo.  A string resultante sempre terminará com "/0", por isto somente tamanho-1 caracteres, no máximo, serão lidos. Laboratório de Programação I – Arquivos (texto) em disco
  • 18. Grupo 2: fgets() Laboratório de Programação I – Arquivos (texto) em disco
  • 19. Exercícios Responda as seguintes questões referentes ao “Grupo 2: fputs() e fgets()” de manipulação de arquivos em alto-nível em C. 1. Escreva um programa que peça o nome, telefone e endereço. O programa deve gravar o conteúdo em um arquivo texto da seguinte maneira: Nome: Fulano Telefone: 53-99999999 Endereço: Sete de Setembro, 12345 2. Desenvolva um programa que leia o conteúdo do arquivo do exercício anterior, para isso utilize o fgets(). Algoritmos e Programação - Estruturas de repetição
  • 20. Grupo 3: fprintf() A função fprintf escreve uma constante de caracteres em um arquivo de saída.  Funciona como o printf, sendo que a diferença é a saída padrão, que em fprintf é um arquivo e em printf é o monitor. Laboratório de Programação I – Arquivos (texto) em disco
  • 21. Grupo 3: fprintf() Laboratório de Programação I – Arquivos (texto) em disco
  • 22. Grupo 3: fscanf() A função fscanf lê uma constante de caracteres em um arquivo de entrada.  Funciona como o scanf, sendo que a diferença é a entrada padrão, que em fscanf é um arquivo e em scanf é o teclado. Laboratório de Programação I – Arquivos (texto) em disco
  • 23. Grupo 3: fscanf() Laboratório de Programação I – Arquivos (texto) em disco
  • 24. Exercícios Responda as seguintes questões referentes ao “Grupo 3: fprintf() e fscanf()” de manipulação de arquivos em alto-nível em C. 1. Escreva um programa que pergunte ao usuário o tipo de lista de compras ele deseja criar: Padaria ou Churrasco. O programa deve gravar os itens em um arquivo texto até o usuário digitar 0 (zero), ficando da seguinte maneira, por exemplo: PADARIA CHURRASCO pão carvão manteiga picanha café refrigerante ….. ... 2. Desenvolva um programa que leia o conteúdo do arquivo do exercício anterior, para isso utilize o fscanf(). Algoritmos e Programação - Estruturas de repetição