Поэтому задача сводится к возможности перевода динамического массива байт записанного в буффер с неизвестным положением точки - в флоат число :) И она вполне решаема)
И именно по причине такого уровня сложности и в целом усложнения операций чтения в случае огромных файлов строковые форматы - это плохо :) Но у них есть свои преимущества. Что obj поддерживается любым утюгом, что csv можно много где загрузить и открыть, что json. Так как это некоторые стандарты)
Хотя если нужно что-то быстрое в контексте конкретной скажем игры или внутри проекта, то уже юзают bson, protobuf и так далее. Ну или хз, что там у нас сейчас модное) Бд это неплохо, но у них свои минусы)