Programação II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres.

Slides:



Advertisements
Apresentações semelhantes
TRATAMENTO DE ARQUIVOS EM C
Advertisements

Python: Entrada e Saída
Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1.
© Copyright 2008 Algoritmos e Estruturas de Dados IF672ec - Algoritmos e Estruturas de Dados CIn - UFPE { alp4, dnq, dwcs, fmm, jdf2, lfpd, mraga, psbof,
Programação para Engenharia I
1 Tipos definidos O programador pode definir seus próprios tipos de dados tipos complexos usados da mesma forma que os simples declaram-se variáveis utilizando-se.
Prof. Luis Otavio Alvares
Modificadores de tipos e Arquivos
LPG - I: Alocação Dinâmica de Memória - Ponteiros
Arquivos Prof: Erivelto Tschoeke, Msc. –
Prof: Erivelto Tschoeke, Msc. –
LPG - I: Ponteiros e Vetores/Matrizes UDESC - SBS
Linguagem de Programação 1
Prof.: Sergio Pacheco Linguagem PHP Prof.: Sergio Pacheco 1.
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
Universidade do Vale do Paraíba Colégio Técnico Antônio Teixeira Fernandes Disciplina Programação Orientada a Objetos I Material IV-Bimestre Criando um.
Linguagem C Strings.
Armazenamento de Dados em Arquivos
Linguagem C Strings.
Armazenamento de Dados em Arquivos
Fundamentos de Programação 1
Escola Secundária c/ 3º CEB da Batalha
Tratamento de Ficheiros
Revisão da Linguagem C.
PROGRAMAÇÃO ESTRUTURADA II
Ordenação e Pesquisa de Dados Marco Antonio Montebello Júnior
CADEIA DE CARACTERES (Strings)
Manipulação de Arquivos em C
Arquivos Continuação.
Estrutura de dados II Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
DAVID ANDERSON CARDOSO DANTAS
Aula Prática 12 Operações com Arquivos Monitoria
C APÍTULO II Armazenando e recuperando dados. A RMAZENANDO E RECUPERANDO DADOS Agenda Salvar dados Abrir um arquivo Criar e gravar Fechar Ler Bloquear.
Aula 13 - Armazenamento de Dados em Arquivos
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática Disciplina: Estrutura de Dados Professor: Cheli dos S. Mendes da Costa Arquivo.
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Estruturas de Dados Aula 2: Estruturas Estáticas 07/04/2014.
ARQUIVOS.
Tratamento de ficheiros Abrir e fechar um ficheiro.
Capítulo V – Comandos de Entrada e Saída 5.1 – Equipamentos de entrada e saída 5.2 – Saída no vídeo-texto 5.3 – Entrada pelo teclado 5.4 – Entrada e saída.
Aula Prática 11 Operações com Arquivos Monitoria
Algoritmos e Estruturas de Dados
Algoritmos e Estruturas de Dados
Joaquim José Hangalo  Podemos entender a memória do computador como um conjunto de células que armazenam informações.  Cada célula.
Operações com Arquivos Monitoria A estrutura FILE  É como um tipo de dado, mas não é um tipo propriamente dito  Definido no arquivo cabeçalho.
Aula Prática 11 Operações com Arquivos Monitoria
Manipulando arquivos texto com C
Programação de Computadores I – Arquivos
Linguagem de programação I A Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação Versão: _01.
CES-10 INTRODUÇÃO À COMPUTAÇÃO
Salvando em Arquivos. Arquivos Um arquivo pode estar associado a qualquer dispositivo de entrada e saída, como por exemplo: teclado, video, impressora,
CES-10 INTRODUÇÃO À COMPUTAÇÃO Aulas Práticas – 2014 Capítulo X Encadeamento de Estruturas por Ponteiros.
Programação Computacional Aula 8: Entrada e Saída pelo Console Prof a. Madeleine Medrano
1 Programação em C Aula Considere que um banco armazena em arquivo as seguintes informações de seus clientes: número da conta (int), nome do cliente.
Programação Computacional Aula 9: Meu primeiro programa em C
Felipe Nunes Flores – Programa de Educação Tutorial.
Aula de Entrada / Saída Monitores: Alessandro Luna Leonardo Ribeiro Mardoqueu Vieira Mozart Araújo Filho.
Linguagem de Programação
USP – ICMC – SSC SSC0300 2º Semestre 2015 Disciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Eletrônica ] 1 Prof. Dr. Daniel Rodrigo.
Programação de Computadores I – Arquivos Profa. Mercedes Gonzales Márquez.
Fundamentos de Programação 1 Slides 18 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Arquivos Seqüências ou de Texto ”.
Fundamentos de Programação 1 Slides 19 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Arquivos Binários”.
Arquivos textos (text)
Estrutura de Dados STRUCTS Dilvan Moreira. Objetivos  Entender o que são e como usar:  Estrutura de Dados para a Linguagem C  Structs (Registros)
Jean Carlo Mendes ** Slides baseados no material do prof. Dr Guilherme Tavares de Assis (UFOP)
FUNÇÕES Dilvan Moreira (baseado em material de Z. Liang)
Fundamentos de Programação 1 Slides 18 Prof. SIMÃO Jean Marcelo SIMÃO Linguagem C “Arquivos Seqüências ou de Texto ”. 1.
1 Aula 08 Conteúdo de Suporte ao Trabalho 2 Prof. Filipe Mutz.
Programação de Computadores I – Arquivos
Algoritmos e Estruturas de Dados I
Transcrição da apresentação:

Programação II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres

Programas executando lidam com variáveis –forma abstrata pela qual os programadores enxergam os dados que seus programas manipulam. –internamente, variáveis ocupam células de memória. usualmente o tipo inteiro de C corresponde a 32 bits uma variável int em C ocupa 4 bytes (4 células de memória). A memória principal de um computador (RAM) é o local onde os programas em execução, e as variáveis que eles utilizam, são armazenados. 2 Variáveis transientes e persistentes

Essas variáveis armazenadas na memória principal –são chamadas de variáveis transientes –seu tempo de existência é limitado pelo tempo que o programa se encontra em memória. Quando o usuário ou o SO decidirem finalizá-lo, essas variáveis deixarão de existir. Computadores teriam sua utilidade muito reduzida se os dados só pudessem ser armazenados enquanto os programas estivessem na memoria principal (e a maquina, ligada). 3 Variáveis transientes e persistentes

Variáveis persistentes –conteúdo armazenado, e possível de ser acessado, independentemente do programa que as criou estar na memória principal. –variáveis persistentes são armazenadas em algum dispositivo de memória chamada de secundária: como discos rígidos, CD/DVD, memória flash mantém por um longo tempo os dados neles contidos independe do conteúdo da memória do computador, ou mesmo de ele estar ligado. ressalta-se que o tempo de armazenamento de, e acesso a dados usando dispositivos de memória secundária é muito maior que usando a memória principal! 4 Variáveis transientes e persistentes

O conceito por trás das variáveis persistentes é o de arquivo –por meio de arquivos, as variáveis podem ser armazenadas e seus dados acessados e processados a qualquer tempo, tanto pelo programa que as criou quanto por outros programas. 5

Tipos de arquivos Texto –arquivo texto é uma sequência de caracteres –dados armazenados de tal forma que em C são armazenados em variáveis do tipo char. –um arquivo texto aberto num editor de texto convencional, poder ter seu conteúdo ao menos visualizado e modificado também... (com caracteres que façam sentido, ou não!...) 6

Tipos de arquivos Binário –Espelho do conteúdo da memória –Comando específico de leitura e escrita –Exemplo 7 1 struct pessoa { 2 char nome[50]; 3 int idade; 4 float salario; 5 } 50 bytes que armazenam cada uma das variáveis char, mais 32 bits (4 bytes) que armazenam uma variável int, e mais 32 bits (4 bytes) que armazenam uma variável float.

Definição de arquivos no programa os arquivos são tratados como variáveis como todas as outras variáveis, devem ser declarados podem ser usados como argumentos para funções existem funções para realizar todas as operações sobre arquivos 8 1FILE *arq; 2 na linguagem C o tipo FILE, definido na biblioteca stdio.h, é usado para se trabalhar com arquivos. Um ponteiro para FILE deve ser declarado sempre que uma variável arquivo for utilizada no programa.

Operações sobre arquivos 9 1/* Protótipo da função de abertura de arquivos */ 2 3FILE *fopen (char *nomearq, char *modo); Parâmetros: ponteiro para char – nomearq (nome do arquivo físico) outro ponteiro para char com o modo de uso do arquivo e tipo. 1/* Exemplo */ 2FILE *arq1, *arq2; 3 4arq1 = fopen ("somente_escrita.txt", "w"); 5arq2 = fopen ("leio_e_escrevo.meu", "r");

Definição de arquivos no programa a função fopen() –avaliação de seu valor de retorno. –erros na abertura de um arquivo ex: passar para fopen() o código “r”, mas o arquivo não existe –retorno de fopen() é NULL indicando a falha na abertura do arquivo 10 1 FILE *arq; 2 arq = fopen ("alunos.txt", "r"); 3 if (arq == NULL) { 4 printf ("Erro na abertura de arquivo! Programa terminado..."); 5 exit (1); 6 } exit() é uma função da biblioteca stdlib.h da linguagem C, que retorna o controle ao SO, passando um código de retorno, e terminando o programa.

Fechamento de arquivos retorna zero se a operação terminou sem falhas caso contrário, retorna um valor diferente de zero recebe como parâmetro um ponteiro para FILE quando fclose() é usada, os dados pendentes na “buffer” do arquivo são escritos e o arquivo físico é dissociado de FILE* 11 1/* Protótipo da função de fechamento de arquivos */ 2 3int fclose (FILE *arq);

Operações com arquivos texto Operações de leitura –fscanf(), fgets() A primeira parece com uma velha conhecida: scanf() A segunda será apresentada, para quem ainda não conhece 12 1/* Protótipos das funções de leitura de arquivos texto*/ 2 3int fscanf ( FILE *fp, const char *format,... ); 4char *fgets (char *str, int length, FILE *fp); 5

Uso de fscanf(..) 13 fscanf() para de ler a linha quando encontra o fim da linha. Neste caso, cada variável lida. Por este motivo esta função não é indicada para leitura de strings que possam ter um fim de linha em seu conteúdo.

Uso de fgets(..) 14

Operações com arquivos texto Operações de escrita –fprintf() Parece com uma velha conhecida: printf() 15 1/* Protótipo da função de escrita de arquivos texto*/ 2 3int fprintf ( FILE *fp, const char *format,... ); 4

Uso de fprintf(...) 16

Algumas funções úteis feof() –verificação de fim de arquivo  A função que recebe como parâmetro o ponteiro associado a um arquivo já aberto (via fopen), retorna zero se o arquivo ainda não chegou ao fim; 17 1/* Protótipos da função feof() */ 2 3int feof(FILE *fp);