```d file.rawWrite((cast(ubyte*)&wahv)[0 .. WaveHeader.sizeof]); ```
However I would recommend doing it field by field.A lot more work, but allows you to handle endianness issues and remove alignment concerns. Also changing of field sizes if required.
Same principles as the code above.