[fpc-pascal] Adding a array of float in ressource and use it ?
    Michael Van Canneyt 
    michael at freepascal.org
       
    Mon Mar  6 12:07:25 CET 2017
    
    
  
On Mon, 6 Mar 2017, fredvs wrote:
> Define "much less success". How are you writing the array and how are you
> reading it?
>
> Hello and thanks for answer.
>
> Here how the array is written:
>
> var
> buffer : array of float;
> ....
> FileBuffer.Data := TFileStream.Create(filename,fmCreate);
> FileBuffer.Data.Seek(0, soFromBeginning);
> FileBuffer.Data.WriteBuffer(buffer[0],Length(Buffer));
>
> The result is OK if integer 16/32 bit inside the buffer.
> If data inside the buffer is float 32 bit, result is a file of... 2
> octets...
You must write
  FileBuffer.Data.WriteBuffer(buffer[0],Length(Buffer)*Sizeof(Float));
Because for a dynamic array, length returns the length in elements, not in bytes.
Michael.
    
    
More information about the fpc-pascal
mailing list