К счастью документация в Qt настолько хороша, что покрывает практически весь функционал. Плюс там действительно прекрасные вводные к статьям, показывающие способы применения классов. Однако, многие игнорируют справки (я тоже не безгрешен в этом), а затем начинается придумывание велосипедов особенно у совсем юных. Если данная статья позволит сохранить хоть сколько-нибудь времени и нервов старших товарищей, то цель вполне достигнута.
Кстати, writeRawData, насколько я помню, endianess как раз игнорирует, по этому если его использовать, есть полные шансы схлопотать бинарную несовместимость на разных платформах.
Да, хорошее замечание. readRawData и writeRawData работают с массивами char как есть. То есть они игнорируют порядок старшего бита, установленного в QDataStream. Читают\Пишут char они по нормальному старшим вперед.
Думаю, что стоит добавить:
— полный пример сериализации с последующей записью в файл и чтения из файла с последующей десериализацией для Qt 4.8
— пример сериализации/десериализации структуры вроде
Работа с QDataStream