SlideShare uma empresa Scribd logo
2
Mais lidos
3
Mais lidos
Linguagem C Arquivos Regis Pires Magalhães [email_address]
Arquivos Podem armazenar grande quantidade de informação; Dados são persistentes (gravados em disco).
Tipos de Arquivos Texto Armazena caracteres que podem ser mostrados diretamente na tela ou modificados por um editor de textos simples. Conhecido por arquivo seqüencial. Tipo especial de arquivo que pode ser editado normalmente através de um editor de textos qualquer. É dito seqüencial  porque a leitura tem que ser  feita seqüencialmente do início ao fim do arquivo.
Tipos de Arquivos Binário Seqüência de bits sujeita às convenções dos programas que o gerou. Conhecido por Arquivo randômico, ou de acesso aleatório. É possível  buscar uma determinada informação em qualquer posição, sem necessidade de percorrer todo o arquivo até alcançar a informação desejada. O acesso a informação é direto. Exemplos: Arquivos executáveis, arquivos compactados, arquivos de registros.
Manipulação de Arquivos Passos: Criar um ponteiro para a estrutura FILE (definida em stdio.h) Abrir o arquivo. Ler ou gravar dados no arquivo. Fechar o arquivo.
Escrita de Arquivo Texto #include   <stdio.h> int  main() { FILE  *arq; arq =  fopen ( &quot;teste1.txt&quot; ,  &quot;w&quot; ); fprintf (arq,  &quot;Ola, Mundo!!!\n&quot; ); fclose (arq); return  0; }
Leitura de Arquivo Texto #include   <stdio.h> int  main() { FILE  *arq; char  c; arq =  fopen ( &quot;teste.txt&quot; ,  &quot;r&quot; ); c = getc(arq); while  (c != EOF) { printf ( &quot;%c&quot; , c); c = getc(arq); } fclose (arq); return  0; }
Somatório dos números de um arquivo #include   <stdio.h> int  main() { FILE  *arq; int  numero, soma = 0; arq =  fopen ( &quot;numeros.txt&quot; ,  &quot;r&quot; ); while  ( fscanf (arq,  &quot;%d&quot; , &numero) != EOF) { soma = soma + numero; } printf ( &quot;A soma e: %d\n&quot; , soma);  fclose (arq); return  0; }
Funções fopen(&quot;nome&quot;, &quot;modo&quot;) Abre um arquivo e retorna um ponteiro para ele.  Caso não consiga abrir o arquivo, retorna NULL. fprintf(fp, &quot;formato&quot;, arg1, ...)  Escreve para um arquivo fclose(fp) Fecha um arquivo getc(fp) Obtém um caractere. fscanf(fp, &quot;formato&quot;, arg1, ...) Lê de um arquivo. fwrite(*prt, tamanho_bloco , n, fp) Escreve n blocos de *ptr para o arquivo.
Funções fread(*ptr, tamanho_bloco, n, fp) fseek(fp, posicao, modo) Altera a posição no arquivo. Deslocamento relativo ao: SEEK_SET – início do arquivo SEEK_CUR – ponto inicial SEEK_END – final do arquivo fflush(fp)  Realiza a gravação efetiva do arquivo ftell(fp)  Indica a posição corrente do ponteiro do arquivo.
Modos de Operação
Salvando uma estrutura #include   <stdio.h> #include   <string.h> struct  pessoa { char   nome [50]; int   idade ; }; typedef   struct  pessoa  Pessoa ; int  main() { FILE  *arq; arq =  fopen ( &quot;pessoas.txt&quot; ,  &quot;ab&quot; ); Pessoa  p; printf ( &quot;Digite um nome: &quot; ); gets (p. nome ); printf ( &quot;Digite a idade: &quot; ); scanf ( &quot;%d&quot; , &p. idade ); fwrite (&p,  sizeof ( Pessoa ), 1, arq); fclose (arq); return  0; }
Lendo todo o arquivo #include   <stdio.h> #include   <string.h> struct  pessoa { char   nome [50]; int   idade ; }; typedef   struct  pessoa  Pessoa ; int  main() { FILE  *arq; arq =  fopen ( &quot;pessoas.txt&quot; ,  &quot;rb&quot; ); Pessoa  p; while ( fread (&p,  sizeof ( Pessoa ), 1, arq) != 0) { printf ( &quot;Nome: %s - Idade: %d\n&quot; , p. nome , p. idade ); } fclose (arq); return  0; }

Mais conteúdo relacionado

ODP
Linguagem C 09 Ponteiros
PPTX
Linguagem C - Strings
ODP
Linguagem C 07 Registros
POT
Algoritmo 06 - Array e Matrizes
PDF
Linguagem C - Funções e ponteiros
PDF
Arquivos em C
PPT
Logica Algoritmo 05 Repeticao
PPTX
Linguagem C - Estruturas
Linguagem C 09 Ponteiros
Linguagem C - Strings
Linguagem C 07 Registros
Algoritmo 06 - Array e Matrizes
Linguagem C - Funções e ponteiros
Arquivos em C
Logica Algoritmo 05 Repeticao
Linguagem C - Estruturas

Mais procurados (20)

PDF
Estrutura de dados
PPTX
AULA 01 - Conceitos de HTML.pptx
PPTX
PPT
Algoritmo - tipos de dados
PPT
PDF
Banco de Dados
PDF
Estrutura de Dados Apoio (Tabela Hash)
PDF
Javascript (parte 1)
PPTX
Tabela Hash
PPTX
ShellSort - Ordenação
PDF
Introdução à Linguagem de Programação C
PPTX
Structs em C
PPTX
Introdução a Linguagem de Programação PHP
PPT
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
PDF
Estrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
PPTX
Estrutura de Dados em Java (Funções e Procedimentos)
PDF
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
PPTX
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
PPTX
10 Java Script - Exemplos práticos
Estrutura de dados
AULA 01 - Conceitos de HTML.pptx
Algoritmo - tipos de dados
Banco de Dados
Estrutura de Dados Apoio (Tabela Hash)
Javascript (parte 1)
Tabela Hash
ShellSort - Ordenação
Introdução à Linguagem de Programação C
Structs em C
Introdução a Linguagem de Programação PHP
Complexidade de Algoritmos, Notação assintótica, Algoritmos polinomiais e in...
Estrutura de Dados - Aula 09 - Listas Simplesmente Encadeadas
Estrutura de Dados em Java (Funções e Procedimentos)
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)
Estrutura de Dados em Java (Variáveis Compostas - Vetores e Matrizes)
10 Java Script - Exemplos práticos
Anúncio

Destaque (20)

PPT
Júlio Resende
ODP
Linguagem C 02 String
PPT
Julio Resende
PPT
Júlio Resende
ODP
Linguagem C 04 Estruturas De Repeticao
ODP
Linguagem C 01 Primeiros Passos
ODP
Linguagem C 06 Funcoes
ODP
Linguagem C 05 Vetores E Matrizes
ODP
Linguagem C 03 Estruturas De Decisao
PDF
Arquivamento e noções de procedimentos administrativos
PPT
Acesso Contábil - Passo a passo para emissão de Nota Fiscal Eletrônica
PDF
Petição de juntada
DOC
Modelo de substabelecimento
ODP
Linguagem C 08 Definicao De Tipos
PDF
Registro de documento para modificações de status na ordem de produção
PDF
O Boticário: uma forma inovadora de gerenciar o processo de inovação
PPTX
Gestão eletrônica de documentos - pasta obras
PPTX
Contrato compra e venda
PPT
Segurança no Armazenamento: Backups
PDF
Criando roteiro de produção com sequenciamento
Júlio Resende
Linguagem C 02 String
Julio Resende
Júlio Resende
Linguagem C 04 Estruturas De Repeticao
Linguagem C 01 Primeiros Passos
Linguagem C 06 Funcoes
Linguagem C 05 Vetores E Matrizes
Linguagem C 03 Estruturas De Decisao
Arquivamento e noções de procedimentos administrativos
Acesso Contábil - Passo a passo para emissão de Nota Fiscal Eletrônica
Petição de juntada
Modelo de substabelecimento
Linguagem C 08 Definicao De Tipos
Registro de documento para modificações de status na ordem de produção
O Boticário: uma forma inovadora de gerenciar o processo de inovação
Gestão eletrônica de documentos - pasta obras
Contrato compra e venda
Segurança no Armazenamento: Backups
Criando roteiro de produção com sequenciamento
Anúncio

Semelhante a Linguagem C 10 Arquivos (20)

PDF
Motivação das equipes durante o trabalho.
PPTX
Algoritmos - Aula 16 B - Arquivos
PDF
Estrutura de dados ii
PDF
Aula (Arquivos) - Lab II.pdfjejejwjwjwsbwnwhwhwhwh
PPT
PPTX
Aula 18 - Manipulacao De Arquivos python
PPTX
Ficheiros em C
PPTX
Programação Estruturada 2 - Aula 04
PPTX
programação c 8 9_aula
PPTX
Algoritmos - Arquivos Parte 2
PDF
Árvore Binária em C
PDF
Conhecendo ou relembrando C
DOCX
Ativ complementar etapa 02
PPT
Introdução a Linguagem C
PDF
Arquivos manipulação entrada saída em java
PDF
Árvore Binária
PDF
Arquivos slides aula25
PPTX
Linguagem C - Vetores
PPTX
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
PPTX
Aula 3: Introdução a sistema de arquivos
Motivação das equipes durante o trabalho.
Algoritmos - Aula 16 B - Arquivos
Estrutura de dados ii
Aula (Arquivos) - Lab II.pdfjejejwjwjwsbwnwhwhwhwh
Aula 18 - Manipulacao De Arquivos python
Ficheiros em C
Programação Estruturada 2 - Aula 04
programação c 8 9_aula
Algoritmos - Arquivos Parte 2
Árvore Binária em C
Conhecendo ou relembrando C
Ativ complementar etapa 02
Introdução a Linguagem C
Arquivos manipulação entrada saída em java
Árvore Binária
Arquivos slides aula25
Linguagem C - Vetores
Aula 10 de algoritmos com raciocínio lógico e desenvolvimento de código
Aula 3: Introdução a sistema de arquivos

Mais de Regis Magalhães (20)

PDF
High Dimensional Data
PDF
Web Scale Data Management
PPTX
PHP 10 CodeIgniter
ODP
Prog web 01-php-introducao
ODP
Prog web 02-php-primeiros-passos
ODP
Prog web 00-modelo-cliente_servidor_web
ODP
Prog web 09-php-crud-mvc
ODP
Prog web 08-php-mvc
ODP
Prog web 07-pdo
ODP
Prog web 06-php-oo
ODP
Prog web 05-php-mysql
ODP
Prog web 04-php-gd
PPT
Prog web 03-php-sessoes-cookies_cabecalhos
ODP
Prog web 03-php-sessoes-cookies_cabecalhos
PPT
Prog web 02-php-primeiros-passos
ODP
Prog web 02-php-primeiros-passos
ODP
Prog web 00-modelo-cliente_servidor_web
ODP
Prog web 01-php-introducao
PDF
Linked Data Tutorial - Conferencia W3C Brasil 2011
PDF
Linked Data - Minicurso - SBBD 2011
High Dimensional Data
Web Scale Data Management
PHP 10 CodeIgniter
Prog web 01-php-introducao
Prog web 02-php-primeiros-passos
Prog web 00-modelo-cliente_servidor_web
Prog web 09-php-crud-mvc
Prog web 08-php-mvc
Prog web 07-pdo
Prog web 06-php-oo
Prog web 05-php-mysql
Prog web 04-php-gd
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 03-php-sessoes-cookies_cabecalhos
Prog web 02-php-primeiros-passos
Prog web 02-php-primeiros-passos
Prog web 00-modelo-cliente_servidor_web
Prog web 01-php-introducao
Linked Data Tutorial - Conferencia W3C Brasil 2011
Linked Data - Minicurso - SBBD 2011

Linguagem C 10 Arquivos

  • 1. Linguagem C Arquivos Regis Pires Magalhães [email_address]
  • 2. Arquivos Podem armazenar grande quantidade de informação; Dados são persistentes (gravados em disco).
  • 3. Tipos de Arquivos Texto Armazena caracteres que podem ser mostrados diretamente na tela ou modificados por um editor de textos simples. Conhecido por arquivo seqüencial. Tipo especial de arquivo que pode ser editado normalmente através de um editor de textos qualquer. É dito seqüencial porque a leitura tem que ser feita seqüencialmente do início ao fim do arquivo.
  • 4. Tipos de Arquivos Binário Seqüência de bits sujeita às convenções dos programas que o gerou. Conhecido por Arquivo randômico, ou de acesso aleatório. É possível buscar uma determinada informação em qualquer posição, sem necessidade de percorrer todo o arquivo até alcançar a informação desejada. O acesso a informação é direto. Exemplos: Arquivos executáveis, arquivos compactados, arquivos de registros.
  • 5. Manipulação de Arquivos Passos: Criar um ponteiro para a estrutura FILE (definida em stdio.h) Abrir o arquivo. Ler ou gravar dados no arquivo. Fechar o arquivo.
  • 6. Escrita de Arquivo Texto #include <stdio.h> int main() { FILE *arq; arq = fopen ( &quot;teste1.txt&quot; , &quot;w&quot; ); fprintf (arq, &quot;Ola, Mundo!!!\n&quot; ); fclose (arq); return 0; }
  • 7. Leitura de Arquivo Texto #include <stdio.h> int main() { FILE *arq; char c; arq = fopen ( &quot;teste.txt&quot; , &quot;r&quot; ); c = getc(arq); while (c != EOF) { printf ( &quot;%c&quot; , c); c = getc(arq); } fclose (arq); return 0; }
  • 8. Somatório dos números de um arquivo #include <stdio.h> int main() { FILE *arq; int numero, soma = 0; arq = fopen ( &quot;numeros.txt&quot; , &quot;r&quot; ); while ( fscanf (arq, &quot;%d&quot; , &numero) != EOF) { soma = soma + numero; } printf ( &quot;A soma e: %d\n&quot; , soma); fclose (arq); return 0; }
  • 9. Funções fopen(&quot;nome&quot;, &quot;modo&quot;) Abre um arquivo e retorna um ponteiro para ele. Caso não consiga abrir o arquivo, retorna NULL. fprintf(fp, &quot;formato&quot;, arg1, ...) Escreve para um arquivo fclose(fp) Fecha um arquivo getc(fp) Obtém um caractere. fscanf(fp, &quot;formato&quot;, arg1, ...) Lê de um arquivo. fwrite(*prt, tamanho_bloco , n, fp) Escreve n blocos de *ptr para o arquivo.
  • 10. Funções fread(*ptr, tamanho_bloco, n, fp) fseek(fp, posicao, modo) Altera a posição no arquivo. Deslocamento relativo ao: SEEK_SET – início do arquivo SEEK_CUR – ponto inicial SEEK_END – final do arquivo fflush(fp) Realiza a gravação efetiva do arquivo ftell(fp) Indica a posição corrente do ponteiro do arquivo.
  • 12. Salvando uma estrutura #include <stdio.h> #include <string.h> struct pessoa { char nome [50]; int idade ; }; typedef struct pessoa Pessoa ; int main() { FILE *arq; arq = fopen ( &quot;pessoas.txt&quot; , &quot;ab&quot; ); Pessoa p; printf ( &quot;Digite um nome: &quot; ); gets (p. nome ); printf ( &quot;Digite a idade: &quot; ); scanf ( &quot;%d&quot; , &p. idade ); fwrite (&p, sizeof ( Pessoa ), 1, arq); fclose (arq); return 0; }
  • 13. Lendo todo o arquivo #include <stdio.h> #include <string.h> struct pessoa { char nome [50]; int idade ; }; typedef struct pessoa Pessoa ; int main() { FILE *arq; arq = fopen ( &quot;pessoas.txt&quot; , &quot;rb&quot; ); Pessoa p; while ( fread (&p, sizeof ( Pessoa ), 1, arq) != 0) { printf ( &quot;Nome: %s - Idade: %d\n&quot; , p. nome , p. idade ); } fclose (arq); return 0; }