leitura/escrita de dados/estruturas em arquivo
Publicado por Geraldo José Ferreira Chagas Júnior 14/10/2008
[ Hits: 12.696 ]
Homepage: http://prginfo.blogspot.com
Já vi dúvidas de pessoas com relação à gravação de dados em forma de estrutura em um arquivo. Como isso é pedido constantemente no primeiro período das faculdades de "Informática", resolvi postar esse exemplo.
Ele não é o trabalho completo, afinal, é para "queimarem" a cabeça, mas dará o pontapé inicial para quem precisar.
#include <stdio.h> typedef struct Taluno { char nome[20]; int idade; } Taluno; Taluno aluno, raluno; int main(void) { /* aqui pode usar o strcpy, mas preferir por caracter x caracter para melhor visualizacao do que esta ocorrendo */ aluno.nome[0] = 'F'; aluno.nome[1] = 'u'; aluno.nome[2] = 'l'; aluno.nome[3] = 'a'; aluno.nome[4] = 'n'; aluno.nome[5] = 'o'; aluno.nome[6] = '\ 0'; aluno.idade = 10; FILE *file; /* abrindo o arquivo para escrita */ if (!(file=fopen("teste.txt","w+"))) return 0; /* gravando os dados */ fwrite (&aluno, 1, sizeof (Taluno), file); close (file); /* apenas para separar a escrita da leitura em 2 tempos */ /* vou usar variaveis diferentes apenas para realmente verem que realmente a leitura esta sendo feita totalmente independente da escrita, nao quero deixar duvida */ printf ("precione qualquer <ENTER> para continuar ...\n"); getchar(); FILE *filer; /* abrindo o arquivo para leitura */ if (!(filer=fopen("teste.bkp","r"))) return 0; long ret; /* lendo o arquivo */ ret = fread (&raluno, 1,sizeof (Taluno), filer); if (ret > 0) { /* imprimindo o conteudo lido */ printf ("Nome: %s\nidade: %d anos\n", raluno.nome, raluno.idade); } close (filer); return 1; }
Listar arquivos e diretórios com suas propriedades
Cadastro de arquivo usando ncurses como menu
Contando a quantidade de palavras de um arquivo texto
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
driver do repositorio debian nao atende o requisito minimo (8)
Novo problema! Erro durante a atualização! (7)
Linux Mint não conecta Wi-Fi sem fio (1)
Tenho um problama de quebra de pacote e não descobri como resolver [RE... (2)