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;
}
Editado por kuroi Adicionar tag CODE e arrumar lay-out do topico
Pergunta
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)
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Editado por kuroiAdicionar tag CODE e arrumar lay-out do topico
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.