What is best way to read and interpret binary files?
    welkam 
    wwwelkam at gmail.com
       
    Tue Nov 20 11:54:59 UTC 2018
    
    
  
On Monday, 19 November 2018 at 22:14:25 UTC, Neia Neutuladh wrote:
>
> Nothing stops you from writing:
>
>     SomeStruct myStruct;
>     fd.rawRead((cast(ubyte*)&myStruct)[0..SomeStruct.sizeof]);
>
> Standard caveats about byte order and alignment.
Never would I thought about casting struct to static array. If I 
understood correctly you cast myStruct pointer to ubyte pointer 
and then construct static array on stack with tmpArray.ptr = 
(ubyte pointer) and tmpArray.sizeof = SomeStruct.sizeof
What I figured out when I woke up is that I never needed c style 
arrays. What I could do is to allocate enough data for all file 
in ubyte array and just use slices to read data by chunks and 
cast them into necessary structs.
Thanks Neia Neutuladh and H. S. Teoh for giving me some pointers
https://www.explainxkcd.com/wiki/index.php/138:_Pointers
    
    
More information about the Digitalmars-d-learn
mailing list