Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   ¿Equivalente al fread -> BlockRead? (https://www.clubdelphi.com/foros/showthread.php?t=55975)

Guillermo80 03-05-2008 13:48:33

¿Equivalente al fread -> BlockRead?
 
Hola, estoy haciendo una lectura de fichero binario pero necesito hacerlo de forma similar a como lo hace un código en C, que usa la función fread, cuyos parámetros son:

buffer : almacén de datos.
size : tamaño de cada elemento en bytes. (tamaño_muestra)
count: máximo nº de elemento a leer
fichero : un fichero binario

En Delphi está la función BlockRead, pero no estoy seguro de que sus parámetros sean los mismos, y creo que funciona de forma diferente. En C el código hace así:

Cita:

fread(buffer, tamaño_muestra, count, fichero);
En delphi yo intentaba:

Cita:

BlockRead(fichero, buffer, tamaño_muestra, count);
¿Estoy haciéndolo mal?

seoane 03-05-2008 14:57:46

¿Como definiste la variable buffer?

Guillermo80 03-05-2008 15:00:55

Lo defino así:

Cita:

buffer: array[1..2048] of Byte
;

seoane 03-05-2008 15:08:59

Pues debería funcionar bien ¿te da algún problema? :confused:

PD: esa ñ en tamaño_muestra ¿no se le atraganta al compilador?

Guillermo80 03-05-2008 15:53:39

jeje, no no Soeane, la ñ solo la puse para el ejemplo aquí, realmente los nombres que tengo puestos son todos distintos. El caso es que parece que va bien, pero es que tengo luego otra función de una dll que escribe un fichero codificado que es la que no está escribiéndome bien, y pensaba que pudiera ser problema de la lectura que estaba haciendo yo, así que si la lectura va bien ahora tengo más información para descartar cosas que funcionan bien.

Gracias por tu ayuda y un saludo ¡¡


La franja horaria es GMT +2. Ahora son las 17:52:20.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi