Дмитрий, это уже более продвинутое использование файлов как потока ввода/вывода.
Вам понадобятся методы File#pos, File#pos= и File#seek:
http://ruby-doc.org/core-2.2.2/IO.html
Напишите, если понадобятся конкретные примеры.
Также в курсе НПДВ-2 мы показываем, как лучше всего хранить данные ваших программ (вы ведь именно для этого используете файлы?) :)