leitura/escrita de dados/estruturas em arquivo
Publicado por Geraldo José Ferreira Chagas Júnior 14/10/2008
[ Hits: 12.523 ]
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; }
Cadastro de arquivo usando ncurses como menu
Montando string de conexão para banco de dados em C# através de um arquivo xml personalizado
Nenhum comentário foi encontrado.
Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina
Curiosidade sobre DOOM Guy e Isabelle de Animal Crossing
Inicializando servidor Ubuntu na AWS e rodando apache em Container
Conheça o Octopi, outro frontend para o Pacman com acesso ao ARU (Arch Linux e derivados)
Terminal transparente no Debian 12 com interface i3wm usando Xfce4-Terminal e Compton
Como compilar o DOOM RETRO no Linux
Stacer - um otimizador gráfico básico de Linux
Corrigindo o erro de "WARNING: Possibly missing firmware for module" no Arch Linux
Como colocar uma assinatura digital em um código compilado ! (0)
Após atualização do Ubuntu 22.04.4 LTS perdi a instalação da placa de ... (0)
DRIVER DE ADPTADOR HDMI PARA USB (2)