Acesso Aleatório em Arquivos
|
|
- Lívia Vilalobos
- 4 Há anos
- Visualizações:
Transcrição
1 Acesso Aleatório em Arquivos INF01202 Prof. Lucas Mello Schnorr 1 / 17
2 Sumário Em C (lidar com o conteúdo de arquivos) Habituais funções de abertura, leitura, escrita, fechamento Retornar rewind Reposicionar fseek Dizer ftell Em C (lidar com arquivos) Renomear rename e remover remove Outras funções de stdio.h 2 / 17
3 Cabeçote de leitura/gravação Leitura/Gravação em arquivos A leitura ou gravação de um stream de/para o arquivo causam um deslocamento da posição corrente do arquivo, em relação ao momento anterior à operação de entrada ou saída de dados. A posição posterior corresponde à posição do início da operação é deslocada pela adição do número de bytes lidos ou gravados, ou seja, a posição corrente fica sendo o byte imediatamente posterior ao último processado (leitura ou gravação). Slide 7 INF Cortesia: Prof. Claudio Jung 3 / 17
4 Rebobinar rewind (rebobina a posição do cabeçote) Protótipo void rewind(file *stream); A função rewind seta o indicador de posição (o cabeçote de leitura/gravação) apontado por stream para o início do arquivo. 4 / 17
5 Rebobinar rewind (rebobina a posição do cabeçote) Protótipo void rewind(file *stream); A função rewind seta o indicador de posição (o cabeçote de leitura/gravação) apontado por stream para o início do arquivo. Exemplo FILE *arquivo; arquivo = fopen("atletas.bin", "r"); fread(&atletas, sizeof(atleta_t), natletas, arquivo); rewind(arquivo); 4 / 17
6 Reposicionar fseek (mudar a posição do cabeçote) Protótipo int fseek(file *stream, long offset, int whence); A função fseek dene a posição do cabeçote de leitura do stream. A nova posição, medidas em bytes, é obtida adicionando offset bytes para a posição especicada por whence. 5 / 17
7 Reposicionar fseek (mudar a posição do cabeçote) Protótipo int fseek(file *stream, long offset, int whence); A função fseek dene a posição do cabeçote de leitura do stream. A nova posição, medidas em bytes, é obtida adicionando offset bytes para a posição especicada por whence. whence SEEK_SET SEEK_CUR SEEK_END Signicado deslocamento oset em relação ao início do arquivo deslocamento oset em relação à posição atual do arquivo deslocamento oset em relação ao nal do arquivo 5 / 17
8 Reposicionar fseek (mudar a posição do cabeçote) Protótipo int fseek(file *stream, long offset, int whence); A função fseek dene a posição do cabeçote de leitura do stream. A nova posição, medidas em bytes, é obtida adicionando offset bytes para a posição especicada por whence. whence SEEK_SET SEEK_CUR SEEK_END Signicado deslocamento oset em relação ao início do arquivo deslocamento oset em relação à posição atual do arquivo deslocamento oset em relação ao nal do arquivo Exemplo FILE *arquivo; arquivo = fopen("atletas.bin", "r"); fseek(arquivo, 4, SEEK_CUR); fseek(arquivo, -sizeof(atleta_t), SEEK_END); fseek(arquivo, 0, SEEK_SET); 5 / 17
9 Revelar ftell (revela a posição do cabeçote) Protótipo long ftell(file *stream); A função obtém o valor atual da posição do cabeçote de leitura/gravação apontado por stream. 6 / 17
10 Revelar ftell (revela a posição do cabeçote) Protótipo long ftell(file *stream); A função obtém o valor atual da posição do cabeçote de leitura/gravação apontado por stream. Exemplo FILE *arquivo; arquivo = fopen("atletas.bin", "r"); fseek(arquivo, 0, SEEK_END); printf("posição atual: %ld\n", ftell(arquivo)); 6 / 17
11 Funções de manipulação externa de arquivos Protótipos int rename(const char *oldpath, const char *newpath); int remove(const char *pathname); 7 / 17
12 Funções de manipulação externa de arquivos Protótipos int rename(const char *oldpath, const char *newpath); int remove(const char *pathname); Outras funções de stdio.h Procure no DuckDuckGo: man stdio 7 / 17
13 Acesso não sequencial no arquivo Acesso Randômico Acesso a pontos de um arquivo, sem percorrer sequencialmente o conteúdo que antecede o conteúdo desejado. Motivações: a posição desejada de leitura ou escrita pode não ser coincidente com a posição corrente do arquivo válida em um certo momento. A posição corrente de leitura ou escrita pode ser alterada para qualquer posição do arquivo. Slide 11 INF Cortesia: Prof. Claudio Jung 8 / 17
14 Exemplo #1: InsereNoFim-AindaMelhor Resolvendo o problema de uma maneira mais elegante: 1. Ler a quantidade de atletas no início do arquivo 2. fseek para o m do arquivo 3. Escrever o novo atleta 4. rewind (reboninar para o início do arquivo) 5. Escrever a nova quantidade de atletas 9 / 17
15 Exemplo #1: InsereNoFim-AindaMelhor Resolvendo o problema de uma maneira mais elegante: 1. Ler a quantidade de atletas no início do arquivo 2. fseek para o m do arquivo 3. Escrever o novo atleta 4. rewind (reboninar para o início do arquivo) 5. Escrever a nova quantidade de atletas InsereNoFinal-AindaMelhor.c #include <stdio.h> #include "GeraSalva-Nomes.h" #include "GeraSalva.h" int main() { FILE *arquivo = NULL; int natletas = 0; atleta_t atleta = {0; gera_nome_aleatorio(atleta.nome, 20); atleta.idade = gera_idade_aleatoria(18, 25); atleta.altura = gera_altura_aleatoria(180, 185); printf("%s, %d, %d\n", atleta.nome, atleta.idade, atleta.altura); //1. arquivo = fopen(fatletas, "r+"); if (arquivo){ fread(&natletas, sizeof(int), 1, arquivo); else{ printf("impossível abrir arquivo " "[%s] para leitura/escrita. " "Fatal.\n", FATLETAS); return 0; //2. fseek(arquivo, 0L, SEEK_END); //3. fwrite(&atleta, sizeof(atleta_t), 1, arquivo); fflush(arquivo); //4. rewind(arquivo); natletas++; fwrite(&natletas, sizeof(int), 1, arquivo); fclose(arquivo); return 0; 9 / 17
16 Exemplo #1: Compilação e Testes rm -f InsereNoFinal-AindaMelhor gcc -Wall -g \ e/rev-a34/gerasalva-nomes.c \ e/rev-a34/inserenofinal-aindamelhor.c \ -o e/rev-a34/inserenofinal-aindamelhor 10 / 17
17 Exemplo #2: Cria um arquivo de índice Um programa que varre o arquivo de atletas atletas.bin, criando um outro arquivo chamado index.bin que terá o nome do atleta seguido de um valor long que contenha a posição daquele atleta no arquivo. 11 / 17
18 Exemplo #2: Cria um arquivo de índice Um programa que varre o arquivo de atletas atletas.bin, criando um outro arquivo chamado index.bin que terá o nome do atleta seguido de um valor long que contenha a posição daquele atleta no arquivo. Nova estrutura de dados index_t, com dois campos typedef struct { char nome[32]; long posicao; index_t; 11 / 17
19 Exemplo #2: Cria um arquivo de índice Um programa que varre o arquivo de atletas atletas.bin, criando um outro arquivo chamado index.bin que terá o nome do atleta seguido de um valor long que contenha a posição daquele atleta no arquivo. Nova estrutura de dados index_t, com dois campos typedef struct { char nome[32]; long posicao; index_t; Programa CriaIndex, com os seguintes módulos Index, funções para preencher index_t a partir de um atleta_t Programa, abre atletas.bin e cria o arquivo index.bin. 11 / 17
20 (#2) Index: Cabeçalho e Implementação Index.h #ifndef INDEX_H #define INDEX_H #include <stdio.h> #include "GeraSalva.h" #define FINDEX "index.bin" typedef struct { char nome[32]; long posicao; index_t; index_t cria_index (atleta_t *a, long posicao); #endif 12 / 17
21 (#2) Index: Cabeçalho e Implementação Index.h #ifndef INDEX_H #define INDEX_H #include <stdio.h> #include "GeraSalva.h" #define FINDEX "index.bin" typedef struct { char nome[32]; long posicao; index_t; index_t cria_index (atleta_t *a, long posicao); #endif Index.c #include "Index.h" index_t cria_index (atleta_t *a, long posicao) { index_t ret; strncpy(ret.nome, a->nome, 32); ret.posicao = posicao; return ret; 12 / 17
22 (#2) Programa: Implementação CriaIndex.c #include "Index.h" int main() { atleta_t atleta; index_t index; // Abre o arquivo dos atletas para leitura FILE *arq0 = fopen(fatletas, "r"); if (!arq0) { printf("impossível de abrir arquivo [%s] " "para leitura. Fatal.\n", FATLETAS); return 0; // Abre o arquivo dos índices para escrita FILE *arq1 = fopen(findex, "w"); if (!arq1) { printf("impossível de abrir arquivo [%s] " "para escrita. Fatal.\n", FINDEX); return 0; // Ignora os 4 bytes iniciais com fseek fseek(arq0, sizeof(int), SEEK_CUR); // Enquanto o arquivo não chegar ao fim while(!feof(arq0)){ // Salva a posição long posicao = ftell(arq0); // Le os dados de um atleta fread(&atleta, sizeof(atleta_t), 1, arq0); // Cria o índice correspondente index = cria_index(&atleta, posicao); // Escreve o índice no arquivo de saída fwrite(&index, sizeof(index_t), 1, arq1); fclose(arq0); fclose(arq1); return 0; 13 / 17
23 (#2) Programa: Implementação CriaIndex.c #include "Index.h" int main() { atleta_t atleta; index_t index; // Abre o arquivo dos atletas para leitura FILE *arq0 = fopen(fatletas, "r"); if (!arq0) { printf("impossível de abrir arquivo [%s] " "para leitura. Fatal.\n", FATLETAS); return 0; // Abre o arquivo dos índices para escrita FILE *arq1 = fopen(findex, "w"); if (!arq1) { printf("impossível de abrir arquivo [%s] " "para escrita. Fatal.\n", FINDEX); return 0; // Ignora os 4 bytes iniciais com fseek fseek(arq0, sizeof(int), SEEK_CUR); // Enquanto o arquivo não chegar ao fim while(!feof(arq0)){ // Salva a posição long posicao = ftell(arq0); // Le os dados de um atleta fread(&atleta, sizeof(atleta_t), 1, arq0); // Cria o índice correspondente index = cria_index(&atleta, posicao); // Escreve o índice no arquivo de saída fwrite(&index, sizeof(index_t), 1, arq1); fclose(arq0); fclose(arq1); return 0; Compilação e testes rm -f CriaIndex gcc -Wall -g e/rev-a34/index.c e/rev-a34/criaindex.c -o e/rev-a34/criaindex 13 / 17
24 Exemplo #3: Atualiza a idade de um atleta Um programa que atualiza a idade de um determinado atleta, cujo nome e idade corrigida foram lidos do teclado. O nome deve ser procurado no arquivo index.bin para obter sua posição no arquivo atletas.bin. Em seguida, o arquivo atletas.bin deve ser atualizado com a idade corrigida. 14 / 17
25 Exemplo #3: Atualiza a idade de um atleta Um programa que atualiza a idade de um determinado atleta, cujo nome e idade corrigida foram lidos do teclado. O nome deve ser procurado no arquivo index.bin para obter sua posição no arquivo atletas.bin. Em seguida, o arquivo atletas.bin deve ser atualizado com a idade corrigida. Passos 1. Abrir arquivos index.bin e atletas.bin 2. Ler procurado e sua nova_idade corrigida 3. Procurar o procurado no index.bin 4. Se encontrar, obter a posição do procurado no atletas.bin 5. Posicionar cabeçote de leitura para posição encontrada 6. Ler o registro 7. Conrmar que realmente encontramos o registro 8. Atualizar campo idade com nova_idade 9. Reposicionar cabeçote de leitura para posição encontrada 10. Escrever o registro atualizado 14 / 17
26 (#3) Atualiza: Implementação Atualiza.c #include "Index.h" #include "GeraSalva.h" int main() { atleta_t atleta = {0; index_t index = {0; char procurado[32] = {0; int nova_idade = 0; // 1. Abre o arquivo dos atletas para atualização FILE *arq0 = fopen(fatletas, "r+"); if (!arq0) { printf("impossível de abrir arquivo [%s] " "para atualização. Fatal.\n", FATLETAS); return 0; // 1. Abre o arquivo dos índices para leitura FILE *arq1 = fopen(findex, "r"); if (!arq1) { printf("impossível de abrir arquivo [%s] " "para leitura. Fatal.\n", FINDEX); return 0; // 2. Le o procurado e sua idade corrigida printf("nome do procurado: "); fgets(procurado, 32, stdin); procurado[strlen(procurado)-1] = '\0'; printf("nova idade do procurado [%s]: ", procurado); scanf("%d", &nova_idade); printf("atualizar [%s] com a idade [%d]!\n", procurado, nova_idade); // 3, 4. Enquanto o arquivo não chegar ao fim int encontrei = 0; while(!feof(arq1) && encontrei == 0){ // Le os dados de um index_t fread(&index, sizeof(index_t), 1, arq1); if (strcmp(index.nome, procurado) == 0){ encontrei = 1; fclose(arq1); if (encontrei == 0){ printf("nome não encontrado no índice. Fatal.\n"); return 0; // 5. Vamos posiciar a cabeça de leitura fseek(arq0, index.posicao, SEEK_SET); // 6. Ler fread(&atleta, sizeof(atleta_t), 1, arq0); // 7. Confirmar que é bem o atleta que estamos procura if (strcmp(atleta.nome, index.nome)!= 0){ printf("erro, o indice está corrompido.\n"); return 0; // 8. Atualizar a idade (em memória) atleta.idade = nova_idade; // 9. Reposicionar na posição correta fseek(arq0, index.posicao, SEEK_SET); // 10. Escrever fwrite(&atleta, sizeof(atleta_t), 1, arq0); fclose(arq0); return 0; 15 / 17
27 (#3) Compilação e testes rm -f Atualiza gcc -Wall -g e/rev-a34/atualiza.c -o e/rev-a34/atualiza Vamos gerar a base e criar índices:./gerasalva./criaindex Atualizar a idade do muvucofasido para / 17
28 Exercício #1: Calcular estatísticas Faça um programa de computador que leia atletas.bin e calcule a idade mínima, idade máxima e idade média dentre todos os atletas envolvidos. Faça o mesmo (ao mesmo tempo) para a altura dos atletas. 17 / 17
29 Exercício #1: Calcular estatísticas Faça um programa de computador que leia atletas.bin e calcule a idade mínima, idade máxima e idade média dentre todos os atletas envolvidos. Faça o mesmo (ao mesmo tempo) para a altura dos atletas. Implemente este algoritmo 1. Posicione no início do primeiro atleta (4 bytes do início do arquivo) 2. Enquanto o arquivo não terminar 2.1 Avance até a posição da idade (sabendo que o nome ocupa 32 bytes) 2.2 Leia a idade 2.3 Atualize estatísticas da idade 2.4 Leia a altura 2.5 Atualize estatísticas da altura 3. Apresente as estatísticas E lembre-se: A idade média e a altura média são números reais. Utilize o programa GeraSalva para criar atletas.bin 17 / 17
1 Escrita de Arquivos Binário
Computação para Informática - Prof. Adriano Joaquim de Oliveira Cruz Aula prática sobre arquivos binários 1 Escrita de Arquivos Binário Esta aula será sobre escrita e leitura de arquivos binários. Nesta
Leia mais1/22 FICHEIROS BINÁRIOS
1/22 FICHEIROS BINÁRIOS Funções para manipulação de ficheiros 2/22 Funções para manipulação de ficheiros fopen abertura de um ficheiro para leitura/entrada e escrita/saída fclose fecho de um ficheiro fwrite
Leia maisIntrodução a Programação. Manipulando Arquivos em Modo Texto
Introdução a Programação Manipulando Arquivos em Modo Texto Tópicos da Aula Hoje aprenderemos funções de manipulação de arquivos texto Funções de leitura em modo texto Funções de escrita em modo texto
Leia maisCURSO BÁSICO DE PROGRAMAÇÃO AULA 17. Manipulação de arquivos binários.
CURSO BÁSICO DE PROGRAMAÇÃO AULA 17 Manipulação de arquivos binários. Revisão Abrindo arquivos de texto em C FILE *arquivo = fopen(, ); FILE: Tipo do objeto de arquivo. fopen: Função
Leia maisArquivos em C. Material da Prof. Ana Eliza
em C Material da Prof. Ana Eliza Definição Um arquivo é uma estrutura de dados linear ( lista ) que é mantida fora da memória principal, em um dispositivo de armazenamento (memória secundária). Um arquivo
Leia maisAula: ARQUIVOS. Introdução à Ciência da Computação I Simone Senger Souza. ICMC/USP São Carlos
Aula: ARQUIVOS Introdução à Ciência da Computação I Simone Senger Souza ICMC/USP São Carlos Introdução As estruturas vistas anteriormente armazenam as informações na memória principal do computador. Nem
Leia maisLinguagem C. Armazenamento de Dados em Arquivos - Continuação
Linguagem C Armazenamento de Dados em Arquivos - Continuação Arquivos Binários Comandos para gravação e leitura de arquivos (revisão): FILE *arquivo; arquivo = fopen( nome, modo ); fwrite (&variavel, sizeof
Leia maisExiste uma quantidade de informação que pode ser armazenada para resolver o problema.
Arquivos Introdução As estruturas vistas anteriormente armazenam as informações na memória principal do computador. Nem sempre é conveniente. Problemas: A informação é perdida; As estruturas de dados são
Leia maisCAP. IX - MANIPULAÇÃO DE ARQUIVOS Generalidades sobre Arquivos. 9.2 Abertura e Fechamento de Arquivos. Operações com arquivos:
CAP. IX - MANIPULAÇÃO DE ARQUIVOS 9.1 Generalidades sobre arquivos 9.2 Abertura e fechamento de arquivos 9.3 Arquivos textos e arquivos binários 9.4 Leitura e escrita em arquivos binários 9.5 Procura direta
Leia maisC Arquivos. Adriano Cruz 21 de julho de Instituto de Matemática Departamento de Ciência da Computação UFRJ
C Arquivos Adriano Cruz 21 de julho de 2017 Instituto de Matemática Departamento de Ciência da Computação UFRJ 1 Resumo da Seção Introdução Fluxos de Dados Arquivos Funções de Entrada e Saída Abrindo um
Leia maisProgramação de Computadores I Arquivos na Linguagem C PROFESSORA CINTIA CAETANO
Programação de Computadores I Arquivos na Linguagem C PROFESSORA CINTIA CAETANO Introdução As informações que os programas utilizam são perdidas quando eles são finalizados ou quando o computador é desligado.
Leia maisProgramação de Computadores II
Programação de Computadores II Slides cedidos por Karina Mochetti 2018.1 Arquivos Arquivos 'a' ' ' '4' '2' ' ' 'C' 'A' K' 'E' 'a' 42 "CAKE" 0x6120 0x3432 0x2043 0x414B 0x45 Arquivos de Texto vs Arquivos
Leia maisE/S em Arquivo. Para ler ou escrever arquivos é preciso usar ponteiros de arquivo. Um ponteiro de arquivo é uma variável ponteiro do tipo FILE:
E/S em Arquivo A linguagem C não contém nenhum comando de E/S. O sistema de E/S de C provê um nível de abstração entre o programador e o dispositivo utilizado. Abstração stream Dispositivo real arquivo
Leia maisARQUIVOS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos
ARQUIVOS Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ARQUIVO Arquivo é um conjunto de dados, dispostos de forma sequencial Arquivo Programa INSTITUTO DE COMPUTAÇÃO - UFF 2 STREAM Leitura e
Leia maisProgramação para Computação 13ª Aula
Programação para Computação 13ª Aula Arquivos em C O sistema de E/S da linguagem C utiliza o conceito de streams e arquivos, como um nível de abstração entre o programador e o dispositivo utilizado. Uma
Leia maisMétodos Computacionais. Arquivos
Métodos Computacionais Arquivos Arquivos Um arquivo representa um elemento de informação armazenado em memória secundária (disco) Características: Informações são persistidas Atribui-se nomes aos elementos
Leia mais13a. Aula Manipulação de arquivos
13a. Aula Manipulação de arquivos 2013.2 O sistema de entrada e saída do ANSI C é composto por uma série de funções (fopen, fprintf, fgets, fclose) cujos protótipos estão reunidos em stdio.h Todas estas
Leia maisUniversidade Federal de Uberlândia Faculdade de Computação. Linguagem C: Manipulação de arquivos
Universidade Federal de Uberlândia Faculdade de Computação Linguagem C: Manipulação de arquivos Prof. Renato Pimentel 1 Introdução Até o momento, trabalhamos com programas que utilizam apenas a memória
Leia maisOperações em Arquivos. MC102 Felipe Bergo
Operações em Arquivos MC102 Felipe Bergo Arquivos O sistema de arquivos é uma abstração para as memórias secundárias do computador: discos, fitas, CDs. Há uma hierarquia de diretórios e cada diretório
Leia maisLaboratório de Introdução à Ciência da Computação I
Laboratório de Introdução à Ciência da Computação I Aula 13 Arquivos Professores: Jó Ueyama 10/06/10 1 Stream de texto Arquivo: tipo texto Um arquivo texto é uma sequência de linhas, onde cada linha contém
Leia maisLinguagem C arquivos. IF61A/IF71A - Computação 1 Prof. Leonelo Almeida. Universidade Tecnológica Federal do Paraná
Linguagem C arquivos IF61A/IF71A - Computação 1 Prof. Leonelo Almeida Universidade Tecnológica Federal do Paraná Até agora... Introdução à linguagem C... Vetores Matrizes Funções Recursão Registros Ponteiros
Leia maisUNIVERSIDADE DA BEIRA INTERIOR
UNIVERSIDADE DA BEIRA INTERIOR Programação II 1º Semestre Exame Época Normal (15 val) 2h + 30min 21/01/2019 1 [2,00 val = 1,00 val + 1,00 val] - Memória dinâmica Considere as seguintes declarações de variáveis:
Leia maisComputação Eletrônica. Aula 12 Arquivos Texto e Binário. Prof: Luciano Barbosa. CIn.ufpe.br
Computação Eletrônica Aula 12 Arquivos Texto e Binário Prof: Luciano Barbosa Relembrando a Arquitetura Básica de um Computador Até agora, toda a informação armazenada por nossos programas estava na memória
Leia maisAula de Arquivos. Jesimar da Silva Arantes. Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP
Aula de Arquivos Jesimar da Silva Arantes Instituto de Ciências Matemáticas e de Computação Universidade de São Paulo - São Carlos, SP Estagiário PAE: Jesimar da Silva Arantes Professor: Claudio Fabiano
Leia maisSequência de informações binárias armazenadas num dispositivo de armazenamento permanente. Em geral os bits são agrupados em grupos de 8 (1 byte)
Arquivos Apesar da organização física sequencial dos bytes no arquivo, podemos em cima desta organização básica implementar outros tipos de estruturação para uma arquivo Arquivo Sequência de informações
Leia maisAula 30: Revisão para Prova 03
Aula 30: Revisão para Prova 03 Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC202 2019/1 Departamento de Computação UFOP Avaliação 3 Provas (60% da nota): Prova 01: 15%
Leia maisProgramação II. Arquivos - Conceito. Arquivos
Programação II Arquivos Jocélio Passos joceliodpassos@bol.com.br C Comp Total, Cap 9 Espaço para armazenar dados em memória auxiliar (não volátil) Arquivos em C podem ser também terminais ou impressoras
Leia maisManipulação de arquivos
246 Arquivo En4dade básica do sistema operacional (SO). Estrutura que armazena informação de forma não volá4l em disposi4vos de memória permanente. Após sua criação, podem ser acessados e modificados por
Leia maisManipulação de Arquivos
Manipulação de Arquivos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM Tipo
Leia maisDICA: Preste bastante atenção nas funções de manipulação de arquivos e verás que você já utiliza arquivos desde a primeira aula.
Capítulo 5 Arquivos 5.1 Introdução Todos os programas codificados até o momento podem armazenar dados de maneira temporária. Isto é, utilizamos a memória principal (RAM) como unidade de armazenamento.
Leia maisStructs, Ponteiros e Arquivos. Prof. Maurício Dias
Structs, Ponteiros e Arquivos Prof. Maurício Dias Registros e structs Um registro (= record) é uma coleção de várias variáveis, possivelmente de tipos diferentes. Na linguagem C, registros são conhecidos
Leia maisArquivos. Programação de Computadores I. Natália Batista.
Arquivos Programação de Computadores I Natália Batista nataliabatista@decom.cefetmg.br 1. Arquivos Estruturas de dados armazenadas fora da memória principal do computador, por exemplo em discos. Usados
Leia maisEstruturas de Dados. Módulo 15 - Arquivos. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 15 - Arquivos 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia maisAula 16. Ficheiros de texto
Aula 16 Aprender Empreender 1 Ficheiros de texto Ficheiros de texto Nos ficheiros de texto a informação é guardada sob a forma de linhas de texto, separadas por um carácter terminador de linha, '\n' (
Leia maisArquivos em C Parte 2
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Arquivos em C Parte 2 Profa Rosana Braga Material preparado pela profa Silvana Maria Affonso de Lara 1º semestre de
Leia maisLinguagem C: Arquivo-Texto
Prof. Paulo R. S. L. Coelho paulo@facom.ufu.br Faculdade de Computação Universidade Federal de Uberlândia GEQ007 Organização 1 Introdução em C 2 3 Organização Introdução em C 1 Introdução em C 2 3 Introdução
Leia maisComputadores Digitais 2. Prof. Rodrigo de Souza Couto
Computadores Digitais 2 Linguagens de Programação DEL-Poli/UFRJ Prof. Miguel Campista Aula de Hoje Arquivos Funções para abrir e fechar arquivos Arquivos em modo texto Arquivos em modo binário ATENÇÃO
Leia maisTÉCNICAS DE PROGRAMAÇÃO
TÉCNICAS DE PROGRAMAÇÃO Arquivo Conceitos Arquivo Fluxo de bytes stream Linguagem C Estrutura do tipo FILE FILE contém informações do arquivo Tamanho Ponteiro para buffer dados Atual operação sobre o arquivo
Leia maisAlgoritmos e Estruturas de dados
Algoritmos e Estruturas de dados Listas Encadeadas Prof. Dr. Fábio Rodrigues de la Rocha (Listas Encadeadas) 1 / 21 Definição: Anteriormente estudamos listas encadeadas que foram implementadas como vetores
Leia maisCurso de C. Comunicação e Arquivos. 24/05/2010 Arnaldo V Moura, Daniel F. Ferber 1
Curso de C Comunicação e Arquivos 24/05/2010 18:40 @ Arnaldo V Moura, Daniel F. Ferber 1 Tipos Avançados de Dados Roteiro: Fluxos de Dados Arquivos Abrir/Fechar Ler/Escrever Outras operações Entrada/Saída
Leia maisINSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA RIO GRANDE DO NORTE Algoritmos ANSI C - Arquivos Copyright 2014 IFRN Agenda Conceito Tipos de arquivos Texto Binário Stream Principais funções Exemplos
Leia maisArquivos. Estruturas de Dados II Vanessa Braganholo
Arquivos Estruturas de Dados II Vanessa Braganholo Entidades } Aplicações precisam armazenar dados sobre as mais diversas entidades, que podem ser concretas ou abstratas } Funcionário de uma empresa (concreto)
Leia maisManipulação de Arquivos Exercício/Exemplo:
Manipulação de Arquivos Exercício/Exemplo: Com o que vimos até o momento sobre manipulação de arquivos. Construa um função em C que possua a capacidade de escrever um inteiro em um arquivo binário. Escreva
Leia maisUSP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2011 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] { icmc. usp. br, gmail. com } Página Pessoal:
Leia maisManipulação de Arquivos
394 Podemos escrever e ler blocos de dados em um determinado arquivo. Para tanto, a linguagem C, disponibiliza as funções fread() e fwrite(). - fread Manipulação de Arquivos O protótipo de fread() é: unsigned
Leia maisARQUIVOS DE DADOS EM C: UMA INTRODUÇÃO
ARQUIVOS DE DADOS EM C: UMA INTRODUÇÃO 1 2 3 4 // Programa p32.c // com alocacao estatica #include #include int main(int args, char * arg[]) int i,j,nl,nc; int ma[10][10], mb[10][10],
Leia maisManipulação de Arquivos Binários
Introdução à Computação I Departamento de Física e Matemática FFCLRP-USP Prof. Dr. José Augusto Baranauskas IBm1006 1º Semestre/2006 Notas de Aula Manipulação de Arquivos Binários Até agora vimos como
Leia maisManipulação de Arquivos
Lucas Ferrari de Oliveira Professor Adjunto Universidade Federal do Paraná Manipulação de Arquivos Linguagem de Programação Estruturado Sumário Introdução; E/S ANSI Versus E/S UNIX; E/S em C Versus E/S
Leia maisComputação 2. Aula 8. Profª. Fabiany Arquivos
Computação 2 Aula 8 Arquivos Profª. Fabiany fabianyl@utfpr.edu.br E/S com Arquivos A linguagem C não possui nenhum comando de E/S. Todas as operações de E/S ocorrem mediante chamadas a funções de biblioteca
Leia maisMC-102 Algoritmos e Programação de Computadores
MC-102 Algoritmos e Programação de Computadores Prof. Ariel Vargas Unicamp Arquivos Binários Arquivos Arquivos Texto Podem ser manipulados por um editor de texto comum Os dados são gravados como caracteres
Leia maisLeitura de Arquivos. Prof. Fabrício Olivetti de França
Leitura de Arquivos Prof. Fabrício Olivetti de França Leitura de Arquivos Na linguagem C temos um tipo especial chamado FILE para trabalhar com arquivos. Abrindo e fechando um arquivo Para abrir um arquivo
Leia maisArquivos Binários UFOP 1/25
BCC 201 - Introdução à Programação I Arquivos Binários Guillermo Cámara-Chávez UFOP 1/25 Arquivos Binários: typedef, structs em Arquivos I t y p e d e f s t r u c t Dados { i n t dia, mes, ano ; d o u
Leia maisUNIVERSIDADE DA BEIRA INTERIOR
UNIVERSIDADE DA BEIRA INTERIOR Programação II 2º Semestre Exame Época Norma (15 val) Resolução 22/06/2018 1 [1,00 val + 1,00 val] - Memória Dinâmica Considere as seguintes declarações de variáveis: int
Leia maisLinguagem C Ficheiros Compilação Separada
Linguagem C Ficheiros Compilação Separada typedef definição de tipos Apontadores para estruturas Ficheiros na bibiloteca standard do C Compilação Separada Definição de novos tipos em C É possível definir
Leia maisUniversidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação. Arquivos em C
Universidade de São Paulo São Carlos Instituto de Ciências Matemáticas e de Computação Arquivos em C 1 Material preparado pela profa Silvana Maria Affonso de Lara 2º semestre de 2010 ROTEIRO DA AULA Arquivos
Leia maisProgramação Estruturada
Programação Estruturada Arquivos Professores Emílio Francesquini e Carla Negri Lintzmayer 2018.Q3 Centro de Matemática, Computação e Cognição Universidade Federal do ABC Parâmetros do programa: argc e
Leia maisLINGUAGEM C: ARQUIVOS
LINGUAGEM C: ARQUIVOS Prof. André Backes ARQUIVOS Por que usar arquivos? Permitem armazenar grande quantidade de informação; Persistência dos dados (disco); Acesso aos dados poder ser não seqüencial; Acesso
Leia maisSSC INTRODUÇÃO À COMPUTAÇÃO PARA ENGENHARIA AMBIENTAL REGISTROS E ARQUIVOS. Profa. Dra. Milena Guessi Margarido
SSC 301 - INTRODUÇÃO À COMPUTAÇÃO PARA ENGENHARIA AMBIENTAL REGISTROS E ARQUIVOS Profa. Dra. Milena Guessi Margarido (milena@icmc.usp.br) Número Bairro CEP Cidade Logradouro Endereço País REGISTRO Estrutura
Leia maisAula 26: Arquivos de texto
Aula 26: Arquivos de texto Introdução a Programação Túlio Toffolo & Puca Huachi http://www.toffolo.com.br BCC201 2019/1 Departamento de Computação UFOP Aulas anteriores Estruturas heterogêneas Alocação
Leia maisADTs (Abstract Data Types): Motivação
ADTs (Abstract Data Types): Motivação Mesmas estruturas são usadas com vários tipos de dados Listas Pilhas Amontoado FIFOs Inteiros Reais Strings Estruturas O procedimento para inserir um inteiro, real,
Leia maisArquivos em C. Notas de Aula. Prof. Francisco Rapchan
Arquivos em C Notas de Aula Prof. Francisco Rapchan www.geocities.com/chicorapchan Há várias definições para arquivos em computação. Uma das mais usadas é a de que um arquivo é um conjunto de registros
Leia maisUNIVERSIDADE DA BEIRA INTERIOR
UNIVERSIDADE DA BEIRA INTERIOR Programação II 1º Semestre Frequência 1 (7 val) Resolução 30/10/2018 1 [1,00 val + 1,00 val] - Memória Dinâmica Considere as seguintes declarações de variáveis: int **V,
Leia maisProf. Neucimar J. Leite. 3 de março de 2007
Funções para manipulação de arquivos Prof. Neucimar J. Leite 3 de março de 2007 Este resumo contém exemplos e comentários sobre algumas das principais funções da linguagem C para manipulação de arquivos
Leia maisUSP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Computação para Engenharia Ambiental
USP - ICMC - SSC SSC 0301-2o. Semestre 2013 Disciplina de Introdução à Computação para Engenharia Ambiental 1 Prof. Dr. Fernando Santos Osório / Prof. Artur Lovato Cunha LRM - Laboratório de Robótica Móvel
Leia maisINF 1620 P2-14/10/05 Questão 1 Nome:
INF 1620 P2-14/10/05 Questão 1 Considere um cadastro de produtos de um estoque, com as seguintes informações para cada produto: Código de identificação do produto: representado por um valor inteiro Nome
Leia maisDepartamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I. Aula 13 Arquivos
Departamento de Sistemas de Computação Universidade de São Paulo Introdução a Ciência de Computação I Aula 13 Arquivos Responsável Seiji Isotani, Rafaela V. Rocha sisotani@icmc.usp.br rafaela.vilela@gmail.com
Leia maisApontadores/ponteiros
Apontadores/ponteiros 1 Apontadores/ponteiros 1. Um ponteiro pode ser manipulado como sendo um vetor. #include int v[5] = { 10, 20, 30, 40, 50 ; int p, i; p = v; for (i = 1; i < 5; i++) printf
Leia maisAlocação Dinâmica de Memória - Exercício Escreva um programa em C que manipule um vetor de inteiros não nulos alocado dinamicamente.
1 Alocação Dinâmica de Memória - Exercício Escreva um programa em C que manipule um vetor de inteiros não nulos alocado dinamicamente. O programa recebe inteiros, através da entrada padrão, e os insere
Leia maisSSC304 Introdução à Programação Para Engenharias. Arquivos. GE4 Bio
Universidade de São Paulo Instituto de Ciências Matemáticas e de Computação Departamento de Sistemas de Computação Introdução à Para Engenharias Arquivos GE4 Bio GE4Bio Grupo de Estudos em Sinais Biológicos
Leia maisDisciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Automação ]
USP - ICMC - SSC SSC 0300-2o. Semestre 2013 Disciplina de [ Eng. Elétrica / Automação ] Prof. Dr. Fernando Santos Osório / PAE: Rafael Klaser (LRM / ICMC) LRM - Laboratório de Robótica Móvel do ICMC /
Leia maisUSP - ICMC - SSC SSC o. Semestre Disciplina de Linguagem de Programação e Aplicações [ Eng. Elétrica / Automação ]
USP - ICMC - SSC SSC 0300-2o. Semestre 2013 Disciplina de [ Eng. Elétrica / Automação ] Prof. Dr. Fernando Santos Osório / PAE: Rafael Klaser (LRM / ICMC) LRM - Laboratório de Robótica Móvel do ICMC /
Leia maisAula 14 Oficina de Programação Tópicos Especiais em C: Arquivos. Profa. Elaine Faria UFU
Aula 14 Oficina de Programação Tópicos Especiais em C: Arquivos Profa. Elaine Faria UFU - 2017 Uso da Memória Secundária Em muitos casos necessitamos da memória secundária (auxiliar), para armazenar informações
Leia maisManipulação de Arquivos
Manipulação de Arquivos Verdades sobre o 4º Bimestre: Você precisa completar 20 pontos Você está de saco cheio cansado Você ainda se embaralha nos printf s e scanf s Pois bem, você pode não ficar entrando
Leia maisManipulação de Arquivos em C
Manipulação de Arquivos em C 2015/1 Programação Básica de Computadores (INF 09325) Archimedes Detoni www.inf.ufes.br/~archimedesdetoni archimedesdetoni@inf.ufes.br Introdução Até agora temos utilizado
Leia maisLinguagem de Programação C. Arquivos
Arquivos Cristiano Lehrer Introdução Em C um arquivo é apenas um conjunto de bytes colocados uns após os outros de forma sequencial: Utilização de arquivos: Fonte de dados para o programa: Trata-se de
Leia maisINF 1620 P1-13/09/02 Questão 1 Nome:
INF 1620 P1-13/09/02 Questão 1 Considere que o cálculo da multa para o pagamento de um determinado imposto varia de acordo com a tabela a seguir: Valor do Imposto Original Multa por mês de atraso até R$
Leia maisDisciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2015 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] icmc. usp. br, gmail. com Página Pessoal: http://www.icmc.usp.br/~fosorio/
Leia maisProgramação Computacional Aula 17: Manipulação de arquivos
Programação Computacional Aula 17: Manipulação de arquivos Profa. Madeleine Medrano madeleine@icte.uftm.edu.br Arquivos de registros Os dados manipulados pelos nossos programas (dados de entrada, dados
Leia maisManipulação de Arquivos
Manipulação de Arquivos Devemos iniciar nossa explanação pelo conceito de arquivo: Arquivo é uma unidade lógica utilizada para armazenar dados em disco ou em qualquer outro dispositivo externo de armazenamento.
Leia maisponteiros INF Programação I Prof. Roberto Azevedo
ponteiros INF1005 -- Programação I -- 2016.1 Prof. Roberto Azevedo razevedo@inf.puc-rio.br ponteiros tópicos o que são ponteiros operadores usados com ponteiros passagem de ponteiros para funções referência
Leia maisAula 16: Manipulação de Arquivos em C
Aula 16: Manipulação de Arquivos em C Fernanda Passos Universidade Federal Fluminense Programação de Computadores IV Fernanda Passos (UFF) Manipulação de Arquivos Programação de Computadores IV 1 / 33
Leia maisCapítulo 6: Arquivos
Capítulo 6: Arquivos Waldemar Celes e Roberto Ierusalimschy 29 de Fevereiro de 2012 1 Funções de entrada e saída em arquivos Nos capítulos anteriores, desenvolvemos programas que capturam seus dados de
Leia maisListas (cont.) K&R: Capitulo 6. Lista Simplesmente Ligada IAED, 2012/2013. Conjunto de nós. Cada nó contém. head NULL. typedef struct node {
Listas (cont.) K&R: Capitulo 6 Lista Simplesmente Ligada Conjunto de nós head NULL Cada nó contém Informação útil Ponteiro para o próimo nó typedef struct node Item item; struct node *net; *link; Item
Leia maisFicheiros. IPC2 1999/2000 F. Nunes Ferreira
Ficheiros IPC2 1999/2000 F. Nunes Ferreira Acetatos baseados no livro C: How to Program (second edition) H. M. Deitel P. J. Deitel Prentice Hall, 1994 Ficheiros Introdução 2 Os ficheiros são utilizados
Leia maisLinguagem de Programação C. Arquivos Binários
Arquivos Binários Cristiano Lehrer Motivação Variáveis int e float tem tamanho fixo em memória: int 2 bytes. float 4 bytes. A representação em texto dos números precisa de uma quantidade variável de caracteres:
Leia maisReferências. Arquivos. Tópicos Principais. Programação de Computadores II. Motivação. Motivação. Abertura de arquivo. Slides da profa.
Programação de Computadores II Arquivos Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004) Capítulo 15 Arquivos Slides da profa. Paula
Leia maisUSP - ICMC - SSC SSC o. Semestre Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria
USP - ICMC - SSC SSC 0501-1o. Semestre 2011 Disciplina de Introdução à Ciência da Computação ICC 1 - Teoria Prof. Fernando Santos Osório Email: fosorio [at] icmc. usp. br, gmail. com Página Pessoal: http://www.icmc.usp.br/~fosorio/
Leia maisProgramação de Computadores I. Linguagem C Arquivos
Linguagem C Arquivos Prof. Edwar Saliba Júnior Novembro de 2011 Unidade 12 Arquivos 1 Trabalhando com Arquivos Um arquivo em Linguagem C pode representar diversas coisas, como: arquivos em disco, uma impressora,
Leia mais4 MDP. void média e dp(int a[],int n,float em,float ed) 7. Variáveis auxiliares 7. Faça ed igual ao desvio padrão 6 }
1 MDP INTRODUCÃO 1 1. Introducão. Esta é uma demonstração do sistema CWEB (veja http://www.ime.usp.br/~pf/ CWEB/) de Knuth e Levy. Um programa CWEB, como este que você está lendo, é uma espécie de jogo
Leia maisIntrodução. Manipulação de arquivos em C. Estrutura de Dados II Prof Jairo Francisco de Souza
Introdução Manipulação de arquivos em C Estrutura de Dados II Prof Jairo Francisco de Souza Manipulação de Arquivo em C Existem dois tipos possíveis de acesso a arquivos na linguagem C : sequencial (lendo
Leia maisPonteiros. Baseado nos slides do Prof. Mauro.
Baseado nos slides do Prof. Mauro. A memória do computador é uma sequência de bytes, na qual endereçamos cada um sequencialmente. Como vimos, uma variável é uma região da memória que reservamos para armazenar
Leia maisAlgoritmos e Estruturas de Dados II IEC013
Algoritmos e Estruturas de Dados II IEC013 Linguagem C - Arquivos - Prof. César Melo cavmelo@dcc.ufam.edu.br Slides preparados pelo Prof. Leandro Galvão galvao@dcc.ufam.edu.br Conceitos iniciais Um arquivo
Leia maisProgramação: Vetores
Programação de Computadores I Aula 09 Programação: Vetores José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/62 Motivação Problema Faça um programa que leia
Leia maisCapítulo 06: Arquivos
Capítulo 06: Arquivos INF1004 e INF1005 Programação 1 Pontifícia Universidade Católica Departamento de Informática Funções de entrada e saída em arquivos Motivação: quando um programa precisa processar
Leia maisComputação 2. Aula 9. Diego Addan Arquivos
Computação 2 Aula 9 Arquivos Diego Addan diegoaddan@gmail.com E/S com Arquivos A linguagem C não possui nenhum comando de E/S. Todas as operações de E/S ocorrem mediante chamadas a funções de biblioteca
Leia maisElementos de programação em C
Elementos de programação em C Entrada e saída: arquivos Francisco A. C. Pinheiro, Elementos de Programação em C, Bookman, 2012. Visite os sítios do livro para obter material adicional: www.bookman.com.br
Leia maisComputação I - C Prova /10/ Profs. Adriano Cruz e Valeria Bastos
Computação I - C Prova 2 2016-2 14/10/2016 - Profs. Adriano Cruz e Valeria Bastos Nome: DRE: Observação: Justifique todas as respostas dadas. Some nte serão aceitas respostas com justificativas. Questão
Leia maisProgramação Estruturada Prof. Rodrigo Hausen Entrada e Saída Parte 2
Programação Estruturada Prof. Rodrigo Hausen http://progest.compscinet.org Entrada e Saída Parte 2 1 FUNÇÕES DE SAÍDA DA BIBLIOTECA PADRÃO Vamos ver as funções mais comuns da biblioteca para escrever na
Leia maisEstruturas de Dados. Módulo 17 - Busca. 2/6/2005 (c) Dept. Informática - PUC-Rio 1
Estruturas de Dados Módulo 17 - Busca 2/6/2005 (c) Dept. Informática - PUC-Rio 1 Referências Waldemar Celes, Renato Cerqueira, José Lucas Rangel, Introdução a Estruturas de Dados, Editora Campus (2004)
Leia mais