elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 00:41  


Tema destacado: Grupo de Facebook de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  buscar registro con fseek
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: buscar registro con fseek  (Leído 942 veces)
tumayy

Desconectado Desconectado

Mensajes: 7


Ver Perfil
buscar registro con fseek
« en: 23 Octubre 2011, 21:57 »

este es un segmento de mi programa
hay un fichero llamado ejemplo.txt, que tiene los siguientes registros
primero
segundo
tercero

mediante el fseek deseo buscar e imprimir el registro n que es tecleado, pero no me sale....ayuda con el codigo (las variables y el puntero a file son globales)
   


  void consulta()
     {
   int n;
        if((pf=fopen("ejemplo.txt","r"))==NULL)
            {
                printf("error");
            }
         else
         printf("numero de resgistro");
         scanf("%d",&n);
         
         fseek(pf,n*sizeof(char),SEEK_SET);

          fread(&cadena,sizeof(char),1,pf) ;
          printf("%s",cadena[4000]) ;
     }


En línea
rir3760


Desconectado Desconectado

Mensajes: 382


Ver Perfil
Re: buscar registro con fseek
« Respuesta #1 en: 24 Octubre 2011, 03:13 »

Honestamente con lo poco que presentas no es posible ayudarte.

Para empezar necesitamos conocer como se almacena cada registro en el archivo. Y si este lo abres en el modo texto no puedes (mas bien no deberías por detalles técnicos) utilizar fseek para encontrar un registro, en su lugar procesas el archivo linea por linea.

Mejor publica la versión mas pequeña posible de tu programa.

Un saludo


En línea

The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
--
Rebec of Ginaz
tumayy

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: buscar registro con fseek
« Respuesta #2 en: 24 Octubre 2011, 19:23 »

lo que me piden en el programa

MENU
1. ingresar(escribir en un fichero)
2.consultar(con fseek ir a determinado registro)
3.modificar(con fseek modificar un registro determinado)
4.mostrar(muestra todos los registros)

ayudame con este programa
En línea
Saberuneko


Desconectado Desconectado

Mensajes: 1.234


The Furry Geek


Ver Perfil WWW
Re: buscar registro con fseek
« Respuesta #3 en: 30 Octubre 2011, 14:26 »

Creo que no lo has entendido del todo, lo que se te ha pedido, a parte de saber qué es lo que haces, es un código algo más completo.

- Con qué trabajas en el fichero? Cadenas? Estructuras?
Yo por ejemplo, creo que necesito ver lo que viene a ser la cabecera del programa, (donde declaras las variables, estructuras y sus tipos), para saber exactamente que es lo que intentas manejar en el archivo.
En línea

MIAU! <3
do-while


Desconectado Desconectado

Mensajes: 604


Cuando me afeito, recuerdo porque me dejo barba.


Ver Perfil
Re: buscar registro con fseek
« Respuesta #4 en: 31 Octubre 2011, 14:43 »

¡Buenas!

Otro detalle, si desconoces el tamaño del registro, poco podras hacer con fseek. Tendras que trabajar con ficheros binarios, con registros del mismo tamaño, para poder acceder a ellos de forma directa, y no sobre ficheros de texto.

¡Saludos!
En línea

¡¡¡Feliz año nuevo!!!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines