PROGRAMAÇÃO ESTRUTURADA II

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.
Um programa em C Bibliotecas Variáveis globais
Prof. Luis Otavio Alvares
Introdução à Linguagem C
Prof. Flavio Marcello Strelow
Arquivos Prof: Erivelto Tschoeke, Msc. –
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.
Algoritmos e Estruturas de Dados II
Linguagem C Strings.
Armazenamento de Dados em Arquivos
Slides Prof. Jean SIMÃO Revisão: Prof. João FABRO
Linguagem C Strings.
Armazenamento de Dados em Arquivos
Fundamentos de Programação 1
Tratamento de Ficheiros
Revisão da Linguagem C.
Aula 4 Prof. Naércio Filho Técnico em Informática
Prof. Natalia Castro Fernandes Mestrado em Telecomunicações – UFF 2º semestre/2012.
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.
Streams –input e output
DAVID ANDERSON CARDOSO DANTAS
Aula Prática 12 Operações com Arquivos Monitoria
Curso de C/C++ Aula 4 Instrutor: Luiz Felipe Sotero
Computação Eletrônica
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 10 - Armazenamento de Dados em Registros
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.
ARQUIVOS.
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Profa. Patrícia A. Jaques
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
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.
STRINGS Dilvan Moreira (baseado no livro Big Java e Z. Liang)
Aula Prática 11 Operações com Arquivos Monitoria
Manipulando arquivos texto com C
Programação de Computadores I – Arquivos
Salvando em Arquivos. Arquivos Um arquivo pode estar associado a qualquer dispositivo de entrada e saída, como por exemplo: teclado, video, impressora,
 2000 Prentice Hall, Inc. All rights reserved. 1 Capítulo 8 - Caracteres e Strings Sumário 8.1Introdução 8.2Conceitos Fundamentais de Strings e Caracteres.
Curso Técnico em Informática Professor Igor Vale.
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.
Algoritmo e Estrutura de Dados I Aulas 12 – Linguagem C Strings Márcia Marra
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 II Arquivos Autoria: Ernani Santos Modificação: Clebson Oliveira Adaptação: Claudia Boeres.
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)
Felipe Nunes Flores – Programa de Educação Tutorial.
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.
Transcrição da apresentação:

PROGRAMAÇÃO ESTRUTURADA II Profª. Noeli Ciência da Computação 1

ARQUIVOS Cap 12 – modulo 2 CIÊNCIA DA COMPUTAÇÃO

ARQUIVOS Um arquivo em disco é um espaço com diversas características físicas, dependendo do tipo de dispositivo que é usado (disquete, disco rígido, CD, ...). Porém, um arquivo em disco, pode ser visto como um espaço sequencial (“stream”) onde são lido ou gravados os dados. A cada arquivo está associado um nome, pelo qual o mesmo é conhecido externamente, isto é, o nome que consta no diretório do disco. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ARQUIVOS Existem dois tipos de arquivos: Arquivos de Texto; Arquivos Binários; CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ARQUIVOS DE TEXTO Onde são gravados apenas os caracteres como se fosse no vídeo e de onde são lidos caracteres como se estivessem sendo digitados no teclado. Por exemplo: Os programas fonte (nomedoprograma.c) que são digitados, são exemplos de arquivos de texto. Um arquivo texto pode ser visualizado com editor de texto (word, wordpad ou o próprio editor do compilador c). CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ARQUIVOS BINÁRIOS Onde são gravados os dados como estão na memória. Por exemplo: Uma variável inteira é gravada com 4 bytes com o conteúdo exato que está na memória. Não é possível ver o conteúdo de um arquivo binário usando um editor de texto. Para isso é necessário ler o arquivo e imprimí-lo no vídeo com printf, por exemplo. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ARQUIVOS O sistema de entrada e saída do ANCI C é composto por uma série de funções, cujos protótipos estão reunidos em stdio.h. Todas estas funções trabalham com o conceito “conceito de arquivo”. Este não é um tipo propriamente dito, mas uma definição usando o comando typedef. Esta definição também está na biblioteca stdio.h. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

DECLARAÇÃO DE ARQUIVOS Podemos declarar um ponteiro de arquivo da seguinte maneira: FILE *p; p será então um ponteiro para um arquivo. É usando este tipo de ponteiro que vamos poder manipular arquivos em C. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

Fopen() - file open ABERTURA DE ARQUIVOS Função de abertura de arquivos. Seu protótipo é: FILE *fopen (char *nome_do_arquivo, char *modo); O nome_do_arquivo determina qual arquivo deverá ser aberto. O modo de abertura diz à função fopen() que tipo de uso você vai fazer do arquivo. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ABERTURA DE ARQUIVOS COMO É ABERTO O ARQUIVO Nome do arquivo SISTEMA OPERACIONAL Nome do arquivo PROGRAMA C ler, gravar, etc. Ponteiro para FILE DISCO CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

ABERTURA DE ARQUIVOS Exemplo: FILE *arq; arq = fopen("C:\\teste.txt","w"); Modo de Abertura Caminho e Nome do arquivo CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

TABELA DE MODOS Modo Significado “r” Abre um arquivo texto para leitura. O arquivo deve existir antes de ser aberto. “w” Abrir um arquivo texto para gravação. Se o arquivo não existir, ele será criado. Se já existir, o conteúdo anterior será destruído. “a” Abrir um arquivo texto para gravação. Os dados serão adicionados no fim do arquivo (“append”), se ele já existir, ou um novo arquivo será criado, no caso de arquivo não existente anteriormente. “rb” Abre um arquivo binário para leitura. Igual ao modo “r” anterior, só que o arquivo é binário. “wb” Cria um arquivo binário para escrita, como no modo “w” anterior, só que o arquivo é binário. “ab” Acrescenta dados binários no fim do arquivo, como no modo “a” anterior, só que o arquivo é binário. “r+” Abre um arquivo texto para leitura e gravação. O arquivo deve existir e pode ser modificado.

TABELA DE MODOS Modo Significado “w+” Cria um arquivo texto para leitura e gravação. Se o arquivo existir, o conteúdo anterior será destruído. Se não existir será criado. “a+” Abre um arquivo texto para gravação e leitura. Os dados serão adicionados no fim do arquivo se ele já existir, ou um novo arquivo será criado, no caso de arquivo não existir anteriormente. “r+b” Abre um arquivo binário para leitura e escrita. O mesmo que “r+” acima. Só que o arquivo é binário. “w+b” Cria um arquivo binário para leitura e escrita. O mesmo que “w+” só que o arquivo é binario. “a+b” Acrescenta dados ou cria um arquivo binário para leitura e escrita. O mesmo que “a+” acima, só que o arquivo é binário.

FUNÇÃO exit() Para utiliza-la deve-se colocar um include para o arquivo de cabeçalho stdlib.h. Esta função aborta a execução do programa. Pode ser chamada de qualquer ponto do programa e faz com que o programa termine e retorne, para o sistema operacional, o código_de_retorno. A função exit() se torna importante em casos em como alocação dinâmica e abertura de arquivos pois nestes casos, se o programa não conseguir a memória necessária ou abrir o arquivo, a melhor saída pode ser terminar a execução do programa. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

FECHAMENTO DE ARQUIVOS fclose() – file close Quando acabamos de usar um arquivo que abrimos, devemos fechá-lo. Para tanto se usa a função fclose(): int fclose (FILE * arq); O ponteiro arq passado à função fclose() determina o arquivo a ser fechado. A função retorna zero no caso de sucesso. CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

EXEMPLO 1 #include <stdio.h> #include <stdlib.h> void main() { FILE *arq; arq = fopen("C:\\teste.txt","w"); if( !arq ) { printf("Falha ao criar o arquivo!!!\n\n"); exit(1); } else printf("Arquivo criado com sucesso!!!\n\n"); if (fclose(arq) == 0) printf("Arquivo fechado com sucesso!!!\n\n"); system("PAUSE"); EXEMPLO 1

fputs() ESCRITA EM ARQUIVOS A função fputs escreve caracteres em um arquivo que foi previamente aberto para escrita. Seu protótipo é: fputs(palavra, arquivo) CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

EXEMPLO 2 #include <stdio.h> #include <stdlib.h> #include <string.h> void main() { char str[80]; FILE *fp; fp = fopen("C:\\TESTE.txt", "a+"); if(fp ==NULL) { printf("arquivo nao pode ser aberto\n"); exit(1); } do { printf("entre uma string (ENTER para sair):\n"); gets(str); strcat(str, "\n"); /* acrescenta uma nova linha */ fputs(str, fp); } while(*str!='\n'); system("PAUSE"); EXEMPLO 2

fgets() LEITURA EM ARQUIVOS Lê uma cadeia de caracteres em um arquivo, até que seja encontrado um caractere de nova linha ou até que o tamanho da string – 1 (menos um) tenham sido lidos: fgets(string, tamanho_string,arquivo) CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO

EXEMPLO 3 #include <stdio.h> #include <stdlib.h> #include <string.h> void main(void) { char str[80]; FILE *fp; if((fp = fopen("c:\\TEST.txt", "a+"))==NULL) { printf("arquivo nao pode ser aberto\n"); exit(1); } do { printf("entre uma string (CR para sair):\n"); gets(str); strcat(str, "\n"); /* acrescenta uma nova linha */ fputs(str, fp); } while(*str!='\n'); rewind(fp); /* reinicializa o indicador de posiçao de arquivo*/ while(!feof(fp)) { fgets(str, 79, fp); printf(“%s”,str); } fclose(fp); system("PAUSE");} EXEMPLO 3

feof() (“End fo File”) indica o fim do arquivo. LEITURA EM ARQUIVOS feof() (“End fo File”) indica o fim do arquivo. Ás vezes é necessário verificar se um arquivo chegou ao fim. Podemos verificar se o final do arquivo foi atingido feof(arquivo) CIÊNCIA DA COMPUTAÇÃO CIÊNCIA DA COMPUTAÇÃO