Ver Mensaje Individual
  #20  
Antiguo 18-05-2007
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Reputación: 24
seoane Va por buen camino
Cita:
Empezado por socger
Si es cierto no estoy familiarizado con esta estructura de ficheros que usas fileStream
Ahora ya voy entendiendo. Te referías al uso de streams. Los streams se utilizan para escribir y leer datos de forma sencilla. Hay diferentes tipos de stream que permiten leer y escribir en diferentes medios: archivos, memoria, sockets, campos BLOB, etc ... pero todos ellos descienden de la clase TStream y disponen de los métodos Read y Write para leer y escribir.

Yo me he acostumbrado a utilizarlos a la hora de tratar ficheros, son bastante cómodos. Pero hubiera sido lo mismo, si utilizáramos un fichero sin tipo, los de toda la vida, y las funciones Blockread y Blockwrite para leer y escribir. Si quieres saber como funcionan los Stream, revisa la ayuda sobre la clase TFileStream.

Una explicación rápida, para empezar:
Código Delphi [-]
// Método Read de la clase TFileStream. Lee en una variable tantos bytes como
// se le indique. En este caso lee en la variable "Cabecera" tantos bytes como 
// mide la propia variable. La función devuelve el número de bytes leídos.
Read(Cabecera,Sizeof(Cabecera))

Código Delphi [-]
// La función ReadBuffer es similar a Read, solo que si no se consiguen leer
// todos los bytes que se ordenaron, se provoca una excepción.
// En este caso queremos almacenar los datos en la porción de memoria apuntada
// por el puntero "Datos". Por eso utilizamos ^ después del nombre del puntero.
ReadBuffer(Datos^,Cabecera.Longitud);

En cuanto a como analizar las diferentes estructuras, ya depende de como sean. Si tienen un tamaño fijo, a lo mejor podemos utilizar punteros. Si no, deberemos de estudiar en cada caso como hacerlo.

Como ya dije no es nada fácil, pero no quería desanimarte con mi anterior mensaje, aunque leyéndolo ahora veo que me salio un poco pesimista . Yo empezaría por familiarizarme con los ficheros (leer, escribir, etc ...) para luego entrar a interpretar los datos. En cualquier caso tienes por delante muchas horas de lectura
Responder Con Cita