Как на c# или java читать заголовки файлов?
Если есть спецификация файла, значит там описаны и смещения\последовательности\структуры данных внутри. 
К примеру описано что есть заголовок в самом начале файлаint version; long size; char[6] name
переведи это в байты и читай в таком количестве а затем прочитанное переводи в int long char. Вот ты его и прочитал.
кхм... "простенький" пример надо ПИСАТЬ... (а лентяям вроде меня - в лом)
спека файла (даже по скрину) - это описание сколько байт (битов) и ЧТО означают
то есть гуглите для начала "чтение бинарных файлов" на нужном вам языке
а вот следующий этап магии - это то что какой то там байт, может иметь значения 1,2,3 (или другие) но каждому значению, согласно спеке (какого то там конкретного формата), может сопоставляться целая строка (а то и абзац текста) пояснения
это вам придется зашивать в прогу (какойнить конфигурационный файл, или встраиваемую БД) - но в любом случае самостоятельно