Estou há um ano no curso de Análise de Sistemas na FATEC e terminei meu último modelo de programação em C em julho, vou começar a programar em C++ a partir de estruturas e arquivos com ordenacao e buscas.
Enfim, sou novo no forum e adorei a maneira que as pessoas interagem por aqui...
Tenho a seguinte dúvida... Tenho um algoritmo de abertura de arquivos que eu criei para fazer uma agenda, esse algoritmo leria o conteudo da agenda (agenda.dat )e exibiria na saída padrão.
É aí que surge a minha dúvida, se eu posso fazer leitura de arquivos binários, por que não tentar ler um arquivo DAT que não foi criado por mim???
Meu Antivirus tem uma base de vírus que fica armazenada num arquivo DAT de mais de 120 MB... Eu queria que simplesmente meu programa em C fosse capaz de abri-lo.
Sem mais enrolação, segue o código:
(LEMBRANDO QUE O CODIGO ESTA RESUMIDO E EU APENAS QUERO FAZER A LEITURA DE DADOS)
/*
* Leitura.c
* Derli Campos
* 03/07/2011
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define ARQ_CLIENTE "c:\\Documents and Settings\\djunior\\Desktop\\avvscan.dat" /* nome do arquivo onde os usuarios são cadastrados */
#define TAM 50 /* tamanho máximo do nome de um usuario */
typedef struct /* estrutura que representa os dados de um usuario */
{
char nome[ TAM + 1 ];
}estrutura;
void listar();
int main()
{
int op;
do
{
/* exibe o menu de opções */
printf("\n\n\tFaca sua escolha:\n\n" );
printf("\t<1> Listar arq DAT\n" );
printf ( "\t<0> Sair do programa\n" );
printf("\tOpção: " );
scanf ("%d", &op);
switch (op)
{
case 1: listar(); /* lista todos os clientes cadastrados */
break;
case 0: return;
default: printf ( "\tOpcao invalida!\n" );
}
}while(op < 1 || op > 3);
return 0;
}
void listar()
{
FILE * arq;
int i = 0;
if((arq = fopen(ARQ_CLIENTE, "rb")) == NULL)
{
fprintf(stderr, "\n\tNao há nenhum cliente cadastrado!\n");
return;
}
estrutura c;
while (i < sizeof(arq))
{
fread(&c, sizeof(estrutura), i,arq);
printf("%s| \n", c);
i++;
}
printf("\t\\__________________________/\n");
fclose(arq);
return;
}
Edited by kuroi Adicionar tag CODE e arrumar lay-out do topico
Question
Derli Junior
Olá,
Estou há um ano no curso de Análise de Sistemas na FATEC e terminei meu último modelo de programação em C em julho, vou começar a programar em C++ a partir de estruturas e arquivos com ordenacao e buscas.
Enfim, sou novo no forum e adorei a maneira que as pessoas interagem por aqui...
Tenho a seguinte dúvida... Tenho um algoritmo de abertura de arquivos que eu criei para fazer uma agenda, esse algoritmo leria o conteudo da agenda (agenda.dat )e exibiria na saída padrão.
É aí que surge a minha dúvida, se eu posso fazer leitura de arquivos binários, por que não tentar ler um arquivo DAT que não foi criado por mim???
Meu Antivirus tem uma base de vírus que fica armazenada num arquivo DAT de mais de 120 MB... Eu queria que simplesmente meu programa em C fosse capaz de abri-lo.
Sem mais enrolação, segue o código:
(LEMBRANDO QUE O CODIGO ESTA RESUMIDO E EU APENAS QUERO FAZER A LEITURA DE DADOS)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Edited by kuroiAdicionar tag CODE e arrumar lay-out do topico
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.