Есть такое понятие "бинарный файл". Грубо говоря - в некоторый момент времени делается "снимок" оперативной памяти, и все что там (точнее говоря, в тех объектах, которые вы решили записать в файл) есть переписывается во внешнюю память. Потом точно так можно вернуть назад. Разумеется, это работает, если вы точно понимаете, из какой структуры вы выгружаете данные в файл и абсолютно уверены, что назад вы их будете принимать в абсолютно такую-же структуру. Никаких преобразований, разбивок по строкам/записям, проверок типов - ничего. Искать что-то в этих данных вы будете не тогда, когда они находятся на внешнем носителе, а тогда, когда они уже в ОП. И еще - разумеется, это будет стандартный файл с точки зрения Windows (или другой ОС), вы его будете видеть в проводнике, но если попробуете открыть - например - текстовым редактором, то увидите нечитаемое множество каких-то значков. Все это - расплата за скорость обработки, которая достигается при чтении-записи этих файлов.
По сути, именно так работают, например, все стандартные приложения, которыми пользуемся, EXCEL, Word и пр.