Если вам нужно сохранить файл (что, я думаю, вам нужно, чтобы добавить новые числа), я бы посоветовал вам «забыть» использовать простой текстовый файл и использовать SQLite или любую другую встроенную БД, для которой выполняется резервное копирование в файле, поскольку вы, вероятно, не хотите загружать все числа в памяти.
"Функцией" (или, точнее, структурой данных), которую вы хотите использовать в SQLite, является B-Tree, так что вы можете быстро получать числа. Я говорю это, потому что вы также можете попытаться найти библиотеку, которая реализует B-Trees, и тогда вам не понадобится SQLite.