The reason we avoid support that kind of reads is that their behaviour is often platform-dependent. For example if u32 is big endian on one machine and little endian on another, the file wont be properly converted.
As Hyeonu also mentioned, I recommend using u32::to_le_bytes to create the array without unsafe. Alternatively you can use serde.