elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [?]Ordenamiento de datos en un archivo
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [?]Ordenamiento de datos en un archivo  (Leído 4,884 veces)
.:BlackCoder:.


Desconectado Desconectado

Mensajes: 388


Cada dia C++!!


Ver Perfil
[?]Ordenamiento de datos en un archivo
« en: 26 Julio 2010, 00:45 am »

Wenas... Tengo un ejercicio que dice algo asi:

    "Hacer un programa que pida nombres y numeros de telefono de personas, y los agregue de forma alfabetica a un archivo... Se desea que cada vez que se ejecute el programa se puedan agregar personas y numeros de tlf correspondientes al mismo, pero que los mantenga ordenados alfabeticamente..."

    Algo asi dice el ejercicio, ahora... Creo que con archivos binarios seria lo ideal, mas deseo hacerlo con archivos de textos... Pero lo haga como lo haga, el problema esta en que, lo que se me ocurre es extraer el contenido del archivo en un vector estructuras (con un miembro char* y otro int) ordenar ese vector y luego agregarlos al archivo pero elminando su contenido primero...

    Ahora la duda en si, es una buena manera de hacerlo? o hay otras mucho mas eficientes?

Saludos...


En línea

"No te esfuerzes por saber mas, esfuerzate por ser el mejor en lo que sabes... Y asi sabras mas" .:BlackCoder:. jajaja



do-while


Desconectado Desconectado

Mensajes: 1.276


¿Habra que sacarla de paseo?


Ver Perfil
Re: [?]Ordenamiento de datos en un archivo
« Respuesta #1 en: 26 Julio 2010, 07:37 am »

¡Buenas!

En el primer trabajo que hice sobre ficheros, hice lo que planteas, cargar los datos en un vector, mantener ordenado el vector y luego almacenarlo en el fichero correspondiente sobreescribiendo los datos anteriores. Aunque es mucho mas facil llevar a cabo la lectura/escritura de ficheros binarios, ya que en ellos escribes directamente bloques de memoria y te olvidas de los distintos campos de un registro (struct).

Si el fichero tiene un numero maximo de registros, puedes olvidarte del vector y trabajar directamente como lo harias con el vector pero realizando las operaciones sobre el fichero, pero para ello tendras que trabajar de nuevo en modo binario.

Otra cosa es que quieras realizar algun informe legible con la informacion del fichero, en tal caso lo unico que tienes que hacer es leer el fichero binario y escribir los datos en un fichero de texto. La contrapartida es que cada vez que actualices el fichero binario tambien tendras que actualizar el fichero de texto, pero en unas pocas lineas de codigo lo solucionas.

¡Saludos!


« Última modificación: 26 Julio 2010, 07:39 am por do-while » En línea

- Doctor, confundo los números y los colores.
- Vaya marrón.
- ¿Marrón? ¡Por el culo te la hinco!
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ayuda con Ordenamiento en Java
Java
ErnestS3 1 3,869 Último mensaje 25 Noviembre 2010, 01:51 am
por ErnestS3
METODOS DE ORDENAMIENTO
Programación C/C++
ANTÓN RAMIREZ 1 15,038 Último mensaje 12 Diciembre 2010, 12:53 pm
por Garfield07
No me lee correctamente datos de un archivo, ayuda!
Programación C/C++
k3r00t 4 3,045 Último mensaje 6 Julio 2011, 01:21 am
por rir3760
Ordenamiento estructuras
Programación C/C++
programacion_c 5 3,316 Último mensaje 31 Mayo 2012, 20:05 pm
por programacion_c
[C] Ordenamiento de datos en C
Programación C/C++
valen7valverde 2 3,669 Último mensaje 11 Mayo 2020, 00:19 am
por valen7valverde
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines