Are there any languages that really lend themselves to this problem?
The data is very heterogeneous (think: underspecified file format spec with multiple independent vendors) with a header that is lots of text labels, and a body that is numeric data of variable bit depth, numeric types.
I wrote utilities to mount and access old Disk Operating Systems from 8-bit computers of the 1980s. (Floppy filesystem, and hard disk filesystem).
You also need a good working knowledge of the file format, whether you obtain that from documentation, or by disassembling working utilities that know that file format, or just plain old digging and trial and error.
That's valid whether you're looking at just a single file's format, or whether you're talking about the workings of a complete filesystem.
For example Python has the struct library which is fairly easy to use.