An open API service indexing awesome lists of open source software.

https://github.com/sergionoivak/treinamento-de-arquivos-em-c

Revisão de arquivos em Linguagem C.
https://github.com/sergionoivak/treinamento-de-arquivos-em-c

Last synced: 21 days ago
JSON representation

Revisão de arquivos em Linguagem C.

Awesome Lists containing this project

README

          

# Treinamento-de-arquivos-em-C
## Podemos classificar os arquivos em duas modalidades:
* TEXTO
* BINARIO

O arquivo será o lugar que vamos substituir um ou ambos de nossos fluxos principais, Entrada e Saida.
A linguagem C conta com diversas funções para tais manipulações.
## Arquivo TEXTO
Podemos abrir um arquivo `.txt` Das seguintes formas:

MODO
Descrição
se o arquivo EXISTIR
se o arquivo NÃO EXISTIR

”r”
Abre o arquivo somente para leitura, a partir do início. O arquivo deve existir.
abre normalmente
ponteiro NULL

"w"
Cria um arquivo vazio para escrita. Se já havia o arquivo, ele é perdido
O anterior é apagado e cria um novo
Cria um novo arquivo

”a”
Abre o arquivo para adicicionar no final
abre normalmente
cria um novo

”r+”
Abre o arquivo para leitura e escrita, a partir do inicio.
abre normalmente
ponteiro NULL


”w+”
cria um novo arquivo para leitura e escrita
O anterior é apagado e cria um novo
cria um novo


”a+”
Abre para edição e leitura no fim do arquivo
Abre normalmente
cria um novo

Os modos de abertura de arquivo estão evidenciados em `E01.c`.


Funcoes para abertura de arquivos texto:

Podemos abrir com a seguinte funcão:

```
FILE * fopen ( const char * filename, const char * mode )
```

A funcao `fopen` retorna um ponteiro do tipo `FILE` e recebe por parametro `char * filename` que é o nome do arquivo e `const char * mode` que é uma das opções de modo da tabela anterior, exemplo:

```
FILE* arquivo_leitura;
arquivo_leitura = fopen("arq_leitura.txt","r");
```


Verificar se o arquivo foi aberto corretamente

é sempre importante saber se um arquivo foi aberto corretamente a fim de tratarmos se isso não acontecer, exemplo:

```
FILE* arquivo_leitura;
arquivo_leitura = fopen("arq_leitura.txt","r");
if(arquivo_leitura==NULL)
{
printf("Arquivo nao encontrado");
return 0;
}
```


Fechar o arquivo


Sempre quando não for mais utilizar um arquivo é necessario fecha-lo com a funcao

```
int fclose ( FILE * stream )
```
exemplo:
```
FILE* arquivo_leitura = fopen("arq_leitura.txt","r");
fclose(arquivo_leitura);
```


Exercicios

1


Faça um programa que crie um arquivo TEXTO em disco, com o nome “dados.txt”,
e escreva neste arquivo em disco uma contagem que vá de 1 até 100, com um número
em cada linha.

O exercicio resolvido esta em `E02.c`.

2


Faça um programa que leia um arquivo texto do disco, lendo linha a linha, e exibindo
cada uma das linhas numeradas na tela. A ideia é podermos pegar um arquivo um
arquivo texto qualquer (pode ser inclusive o arquivo do programa fonte – arquivo “.c”
– de um destes exercícios) e mostrar na tela com as linhas numeradas. As primeiras
linhas do arquivo iriam ser exibidas na tela da seguinte forma:

1: #include

2: #include

3:

4: FILE *ArqEntrada;

5: ...

O exercicio resolvido esta em `E03.c`.

3


Faça um programa que leia (do teclado) um cadastro de 10 alunos, indicando o nome,
nota1, nota2. Calcule a média aritmética simples dos 10 alunos e depois escreva em
um arquivo texto os dados de cada aluno: nome, nota1, nota2 e média. Lembre-se de
que as notas e média deverão ser apresentadas como valores que possuem até 2 casas
após a vírgula.

O exercicio resolvido esta em `E04.c`.

4


Faça um que abra um arquivo HTML e elimine todas as “tags” do texto, ou seja, o
programa deve gerar um novo arquivo em disco que elimine todas as tags Html

O exercicio resolvido esta em `E05.c`.

## Arquivo BINARIO


Tarefa 01 : ler artigo

Tarefa 02 : escrever resumo breve.